| 
					
				 | 
			
			
				@@ -1,139 +1,114 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    <custom-header v-if="isExpert" name="飞鸟管家"></custom-header> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    <div class="home-index" :style="{ height: isExpert ? `calc(100vh - 40px)` : `calc(100vh - ${tabBarHeight}px - 50px)` }"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <!-- 地图 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div class="map-container" ref="mapContainer"></div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <!-- 新建按钮 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div class="add-button" v-show="showAddButton && !isExpert" @click="toSubPage"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <el-icon class="add-button-icon"><CircleCloseFilled /></el-icon> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <span>创建我的农场</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <div class="home-index" :style="{ height: `calc(100vh - ${tabBarHeight}px)` }"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <img class="banner" src="@/assets/img/home/banner.png" alt="" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <!-- 天气遮罩 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <div class="weather-mask" v-show="isExpanded"></div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <!-- 天气 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <weather-info class="weather-info" @weatherExpanded="weatherExpanded"></weather-info> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <!-- 操作按钮 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div class="operation-button"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <div class="button-group"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <div class="button-item" @click="toFarmInfo"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="button-icon" src="@/assets/img/tab_bar/home-active.png" alt=""> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <span>基本信息</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <div class="button-item" @click="toFarmPhoto"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <img class="button-icon" src="@/assets/img/home/photo-icon.png" alt=""> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <span>农场相册</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <weather-info class="weather-info" @weatherExpanded="weatherExpanded" :isGarden="false"></weather-info> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div class="farm-monitor-container"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="farm-monitor-left" @click="handleCardClick(monitorCards.left)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div class="title">{{ monitorCards.left.title }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div class="content">{{ monitorCards.left.content }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div class="arrow"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-icon class="icon"><ArrowRightBold /></el-icon> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <div class="add-farm-button" v-show="!isExpert"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <el-icon class="icon"><CircleCloseFilled /></el-icon> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <span>新增农场</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="farm-monitor-right"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    v-for="(item, index) in monitorCards.right" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    class="right-item" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    :class="{ expert: index === 1 }" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    @click="handleCardClick(item)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div class="title"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <span>{{ item.title }}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-icon class="icon"><ArrowRightBold /></el-icon> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div class="content">{{ item.content }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <!-- 浮动面板 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <home-floating-panel 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            :isExpert="isExpert" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            class="home-floating-panel" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            :style="{ zIndex: zIndex }" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            @heightChange="heightChange" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        ></home-floating-panel> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <!-- 问题提醒 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <problem-reminder></problem-reminder> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <!-- 农场信息 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <farm-info-popup ref="farmInfoRef"></farm-info-popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <AgriculturalDynamics /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <!-- 创建农场弹窗 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <popup v-model:show="showFarmPopup" round class="create-farm-popup"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <template v-if="farmPopupType === 'create'"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <img  class="create-farm-icon" src="@/assets/img/home/create-farm-icon.png" alt="" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="create-farm-text"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div>您当前还没有农场</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div>请先创建农场</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <template v-else> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <img class="farm-check-icon" src="@/assets/img/home/right.png" alt=""> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="create-farm-text success-text">农场创建成功</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div class="create-farm-btn">{{ farmPopupType === 'create' ? '去创建农场' : '我知道了' }}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <script setup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import IndexMap from "./map/index.js"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { onMounted, computed, ref } from "vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { ref, computed, onMounted } from "vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { useStore } from "vuex"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { useRouter,useRoute } from "vue-router"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import customHeader from "@/components/customHeader.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { Popup } from "vant"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import weatherInfo from "@/components/weatherInfo.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import homeFloatingPanel from "./components/homeFloatingPanel.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import problemReminder from "./components/problemReminder.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import farmInfoPopup from "./components/farmInfoPopup.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const router = useRouter(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const route = useRoute(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import AgriculturalDynamics from "./components/AgriculturalDynamics.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { useRouter } from "vue-router"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const store = useStore(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const tabBarHeight = computed(() => store.state.home.tabBarHeight); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const farmInfoRef = ref(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const indexMap = new IndexMap(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const mapContainer = ref(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const router = useRouter(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const isExpert = ref(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if (route.query.type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    isExpert.value = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-onMounted(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    const point = store.state.home.miniUserLocationPoint 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    indexMap.initMap(point, mapContainer.value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const showFarmPopup = ref(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const farmPopupType = ref("create"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 监测卡片数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const monitorCards = ref({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    left: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        title: "农场监测", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        content: "实时监测农场环境和作物生长情况", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        route: "/monitor", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    right: [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            title: "病虫识别", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            content: "智能识别病虫害,提供防治建议", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            route: "/pest-recognition", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            title: "专家咨询", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            content: "专业农技专家在线解答疑问", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            route: "/expert-consultation", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 卡片点击事件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const handleCardClick = (card) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    router.push(card.route); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+onMounted(() => {}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const isExpanded = ref(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const weatherExpanded = (isExpandedValue) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     isExpanded.value = isExpandedValue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const zIndex = ref(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const showAddButton = ref(true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const heightChange = (height) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    zIndex.value = 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    showAddButton.value = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    if (height === 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        showAddButton.value = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } else if (height > 310 + tabBarHeight.value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        zIndex.value = 3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-function toSubPage() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    router.push("/create_farm?isFromHome=true"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-function toFarmPhoto() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    router.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        path: "/farm_photo", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-function toFarmInfo() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    farmInfoRef.value.handleShow(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-<style lang="scss" scoped> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<style scoped lang="scss"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 .home-index { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    overflow: hidden; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    .map-container { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .banner { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    .add-button { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        bottom: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        left: 50%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        transform: translateX(-50%); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        z-index: 2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        justify-content: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        background-image: linear-gradient(180deg, #70bffe 0%, #2199f8 100%); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        border-radius: 25px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        padding: 12px 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        width: 187px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .add-button-icon { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            font-size: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            margin-right: 5px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            transform: rotate(45deg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        height: 200px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        z-index: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     .weather-mask { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        position: fixed; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         top: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         left: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         width: 100%; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -142,68 +117,112 @@ function toFarmInfo() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         z-index: 2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     .weather-info { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        width: calc(100% - 20px); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        top: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        left: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        width: calc(100% - 24px); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        z-index: 2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        top: calc(200px - 28px); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        left: 10px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        z-index: 3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    .operation-button{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        top: 117px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        left: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        width: calc(100% - 24px); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        z-index: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .farm-monitor-container { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        padding-top: 60px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        justify-content: space-between; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        font-size: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        font-weight: 500; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .button-group{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            justify-content: space-between; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .button-item{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        gap: 7px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        margin: 10px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        height: 170px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .farm-monitor-left, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .farm-monitor-right { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .title { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                font-size: 16px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                color: #1d2129; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                font-weight: 500; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .icon { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    font-size: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    margin-left: 2px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .content { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                margin-top: 6px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                font-size: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                color: rgba(29, 33, 41, 0.5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                line-height: 1.5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .arrow { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                border-radius: 5px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                background: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 justify-content: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                gap: 4px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                color: rgba(0, 0, 0, 0.8); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                background-color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                .button-icon{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    width: 13px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    height: 13px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .button-item:first-child{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                margin-right: 10px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                width: 34px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                height: 25px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                margin-top: 10px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                font-size: 11px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .add-farm-button{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .farm-monitor-left { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            flex: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            padding: 25px 10px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            box-sizing: border-box; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            background: url("@/assets/img/home/farm-bg-1.png") no-repeat center center / 100% 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .farm-monitor-right { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            flex: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            justify-content: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            gap: 4px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            background: rgba(0, 0, 0, 0.5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            border: 1px solid rgba(255, 255, 255, 0.5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .icon{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                font-size: 16px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                transform: rotate(45deg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            flex-direction: column; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            gap: 7px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .right-item { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                padding: 10px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                box-sizing: border-box; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                flex-direction: column; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                justify-content: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                flex: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                background: url("@/assets/img/home/farm-bg-2.png") no-repeat center center / 100% 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .expert { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                background: url("@/assets/img/home/farm-bg-3.png") no-repeat center center / 100% 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .button-item, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        .add-farm-button{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            border-radius: 25px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            padding: 8px 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.create-farm-popup { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 75%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    padding: 28px 28px 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    flex-direction: column; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    justify-content: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .create-farm-icon{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        width: 40px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        height: 40px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        margin-bottom: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .farm-check-icon{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        width: 68px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        height: 68px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        margin-bottom: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .create-farm-text{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        font-size: 18px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        font-weight: 500; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        margin-bottom: 32px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        text-align: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        &.success-text{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            font-size: 23px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            font-weight: 400; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    .home-floating-panel { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        position: fixed; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        bottom: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        left: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .create-farm-btn{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        z-index: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        box-sizing: border-box; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        padding: 8px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        border-radius: 25px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        font-size: 16px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        background: #2199F8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        text-align: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </style> 
			 |