.main{margin-bottom: 10vh;}

.fz-section:not(:last-child){margin-bottom: 30px;}
/*单元头*/
.fz-section .info-head{display:flex;cursor:pointer;line-height:45px;font-size:15px}
.fz-section .info-head .title{font-weight:700;min-width:120px;flex-shrink:0;position: relative;padding-left: 20px;font-size: 17px;}
.fz-section .info-head .title:before{content: '';position: absolute;top:50%;left: 0;height: 40%;width: 3px;background:var(--primary-actice);transform: translateY(-50%);}
.fz-section .info-head>ul{display:flex;gap:10px}
.fz-section .info-head>ul>li{padding:0 10px;text-align:center;position:relative}
.fz-section .info-head>ul>li.active:after{content:'';position:absolute;bottom:0;left:50%;width:60%;transform:translateX(-50%);height:2px;background:var(--primary-actice)}
.fz-section .info-head>ul>li.active{color:var(--primary-actice)}
.fz-section .info-head .more{margin-left:auto;font-size:13px;color:#999}

/* --- 4. 首屏布局 (绝对等高对齐) --- */
.root-wrap{display:flex;gap:15px;height:450px;align-items:stretch;}

/* 左侧菜单：无 margin-top 紧贴导航栏，去掉 top 边框实现视觉融合 */
.side-menu{width:220px;background:#2b8a3e;color:#fff;font-size:15px;display:flex;flex-direction:column;position:relative}
.menu-row{display:flex;padding:10px;gap:8px;cursor:pointer;flex:1}
/*.menu-row:hover{background:#fff;color:var(--text-main)}*/
.menu-row .menu-icon{width:16%;flex-shrink:0;display:flex;justify-content:center;padding-top:4px}
.menu-row .menu-icon>i{font-size:22px}
.menu-row .menu-info{flex:1;}
.menu-row .menu-info-dlx>ul{display:flex;flex-wrap:wrap;gap:6px;font-size:12px;margin-top:10px;max-height:38px;overflow:hidden;position:relative}
.menu-row .menu-info-dlx .label-mix{display: flex;justify-content: space-between;align-items: center;}
.menu-row .menu-info-dlx .label-mix>i{font-size:13px}
.menu-row .menu-info-dlx>ul a{font-size:12px;color:#fff}
.menu-row .menu-info>i{font-size:16px}
.menu-row:hover{background:var(--primary-soft);color:var(--text-main)}
.menu-row:hover .menu-info-dlx>ul a{color:#999}
.menu-row .menu-info-dlx>ul a:hover{color:var(--primary-actice)}

.menu-row:hover .expand-container{display:block}
.menu-row .expand-container{position:absolute;right:-280px;top:0;width:280px;z-index:20;display: none;height:450px;overflow: hidden}
.menu-row .expand-container.mix{right: -800px;width: 800px;}
.menu-row .expand-section{margin-left:10px;background:var(--primary-soft);width:calc(100% - 40px);height: 100%;padding:20px;font-size:12px;}
.menu-row .expand-section ul{display:flex;flex-wrap:wrap;gap:10px 8px}
.menu-row .expand-section ul a{color: #606266;}
.menu-row  a:hover{color:var(--primary-actice)!important;}
.menu-row .info-list a:hover{color:var(--primary-actice)!important;}
.menu-row .expand-section .label{font-weight:bold;margin-bottom:6px}
.menu-row .expand-section ul:not(:last-child){margin-bottom:15px}


/* 中间：轮播图 (带一点 margin 产生呼吸感) */
.carousel-box { flex: 1; height: 100%; overflow: hidden;  border-radius: 4px; }
.el-carousel, .el-carousel__container { height: 100% !important; }
.banner-item { height: 100%; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 26px; font-weight: bold; background: linear-gradient(135deg, #27AE60 0%, #11998e 100%); }

/* 右侧：引导区 (利用 flex-grow 对齐底部) */
.side-guide{width:280px;height:100%;display:flex;flex-direction:column;gap:15px}
.live-board{flex:1;background:#fff;border:1px solid var(--border-color);border-radius:4px;display:flex;flex-direction:column;overflow:hidden}
.board-head{height:45px;padding:0 15px;background:var(--primary-soft);color:var(--primary-color);font-weight:700;font-size:14px;display:flex;align-items:center;gap:8px;box-sizing:border-box;z-index:2}

/* Swiper 容器 */
.transaction-container{flex:1;width:100%;height:264px}
.transaction-container .transaction-item{height:44px;display:flex;align-items:center;padding:0 10px;font-size:12px;border-bottom:1px dashed #f0f2f5;box-sizing:border-box;cursor: pointer;}
.transaction-container .transaction-item:hover{background:var(--primary-soft)}
.transaction-container .transaction-item .area{color:#888;width:45px;flex-shrink:0}
.transaction-container .transaction-item .title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:5px}
.transaction-container .transaction-item .tag{font-size:11px;padding:1px 6px;border-radius:2px}
.transaction-container .t-green{background:#eef9f2;color:var(--primary-color)}
.transaction-container .t-orange{background:#fff7e6;color:#fa8c16}

/* 底部服务面板 */
.service-section{background:#fff;border:1px solid var(--border-color);border-radius:4px}
.service-section .s-btn{display:flex;align-items:center;padding:12px 15px;transition:background .2s;text-decoration:none}
.service-section .s-btn:hover{background:var(--primary-soft)}
.service-section .s-btn:first-child{border-bottom:1px solid #f5f7fa}
.service-section .s-icon{width:36px;height:36px;background:var(--primary-soft);border-radius:4px;display:flex;align-items:center;justify-content:center;margin-right:12px;color:var(--primary-color)}
.service-section .s-txt strong{display:block;font-size:13px;color:#333}
.service-section .s-txt p{font-size:11px;color:#999;margin:2px 0 0}



/* 渐变占位背景 */
.b-grad-1 { background: linear-gradient(135deg, #1D976C 0%, #93F9B9 100%); }
.b-grad-2 { background: linear-gradient(135deg, #27AE60 0%, #52c41a 100%); }
.b-grad-3 { background: linear-gradient(135deg, #16a085 0%, #f4d03f 100%); }
.b-grad-4 { background: linear-gradient(135deg, #0ba360 0%, #3cba92 100%); }


/*广告位*/
/*.features{display:flex;justify-content:space-between;gap:18px;margin-top:30px}*/
/*.features .feature-item{flex:1;padding:15px;border-radius:4px;border:1px solid rgba(255,255,255,.3);transition:all .4s cubic-bezier(.4, 0, .2, 1);text-decoration:none;display:block}*/
/*.features .feature-item:hover{transform:translateY(-5px);box-shadow:0 8px 20px rgba(43,138,62,.15);filter:brightness(1.05)}*/
/*.feat-1{background:linear-gradient(135deg,#f0fdf4 0,#dcfce7 100%);border-color:#bbf7d0}*/
/*.feat-2{background:linear-gradient(135deg,#f0f9ff 0,#e0f2fe 100%);border-color:#bae6fd}*/
/*.feat-3{background:linear-gradient(135deg,#fdfcf0 0,#fef9c3 100%);border-color:#fef08a}*/
/*.feat-4{background:linear-gradient(135deg,#f0fff4 0,#c6f6d5 100%);border-color:#9ae6b4}*/
/*.feat-5{background:linear-gradient(135deg,#f6ffed 0,#d9f7be 100%);border-color:#b7eb8f}*/
/*.feat-6{background:linear-gradient(135deg,#f1f8f5 0,#e6f2ed 100%);border-color:#d1e7dd}*/
/*.features .feature-info{display:flex;align-items:center;gap:12px}*/
/*.features .icon-image{width:48px;height:48px;object-fit:contain;flex-shrink:0}*/
/*.features .feature-title{font-size:18px;font-weight:700;color:#2c3e50}*/
/*.features .feature-desc{font-size:13px;color:#5a6b7d;margin-top:15px;line-height:1.4;white-space:nowrap}*/

.features{display:flex;justify-content:space-between;gap:18px;margin-top:30px}
.features .feature-item{flex:1;padding:15px;border-radius:10px;border:1px solid rgba(255,255,255,.5);transition:all .4s cubic-bezier(.4, 0, .2, 1);text-decoration:none;display:block;position:relative;overflow:hidden}
.features .feature-item:hover{transform:translateY(-5px);filter:brightness(1.03)}
.features .feature-info{display:flex;align-items:center;gap:12px}
.features .icon-image{width:48px;height:48px;object-fit:contain;flex-shrink:0;transition:transform .3s ease}
.feature-item:hover .icon-image{transform:scale(1.1)}
.features .feature-title{font-size:17px;font-weight:700;color:var(--text-main);display:flex;align-items:center}
.features .feature-desc{font-size:13px;color:var(--text-sub);margin-top:6px;line-height:1.4;white-space:nowrap}
.feat-1{background:linear-gradient(135deg,#f0fdf4 0,#c6f6d5 100%);border-color:#9ae6b4}
.feat-1:hover{box-shadow:0 8px 20px rgba(39,174,96,.15)}
.feat-2{background:linear-gradient(135deg,#f0f9ff 0,#bae6fd 100%);border-color:#7dd3fc}
.feat-2:hover{box-shadow:0 8px 20px rgba(52,152,219,.15)}
.feat-3{background:linear-gradient(135deg,#fffbeb 0,#fef3c7 100%);border-color:#fde68a}
.feat-3:hover{box-shadow:0 8px 20px rgba(217,119,6,.12)}
.feat-4{background:linear-gradient(135deg,#f8fafc 0,#e2e8f0 100%);border-color:#cbd5e1}
.feat-4:hover{box-shadow:0 8px 20px rgba(71,85,105,.1)}
.feat-5{background:linear-gradient(135deg,#fff7ed 0,#ffedd5 100%);border-color:#fed7aa}
.feat-5:hover{box-shadow:0 8px 20px rgba(234,88,12,.12)}
.feat-6{background:linear-gradient(135deg,#f0fdfa 0,#ccfbf1 100%);border-color:#99f6e4}
.feat-6:hover{box-shadow:0 8px 20px rgba(13,148,136,.12)}


/*供需*/
.trading-container{display:flex;gap:20px}
.trade-box{flex:1;background:#fff;border:1px solid var(--border-color);border-radius:4px;overflow:hidden;}
.trade-head{height:42px;padding:0 15px;display:flex;justify-content:space-between;align-items:center;border-bottom: 1px dashed #f0f2f5;}
.title-wrap{display:flex;align-items:center;gap:8px}
.title-wrap i{color:var(--primary-color);font-size:20px}
.title-wrap .label{font-size:15px;font-weight:bold;}
.trade-head .more{font-size:12px;color:#999;text-decoration:none}
.trade-item-link{display:flex;align-items:center;padding:0 15px;text-decoration:none;transition:all .2s ease;color:inherit;height: 42px;}
.trade-item-link:hover{background-color:var(--primary-soft);padding-left:20px}
.trade-item-link:last-child{border-bottom:none}
.trade-item-link .name{flex:1;font-size:14px;color:#444;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.trade-item-link .price{min-width:30%;flex-shrink: 0;color:#e74c3c;font-weight:700;font-size:15px;text-align:right;padding:0 10px}
.main-info{flex:1;display:flex;align-items:center;gap:8px;overflow:hidden}
.tag-urgent{background:#ff4d4f;color:#fff;font-size:11px;padding:1px 4px;border-radius:2px;flex-shrink:0}
.trade-item-link .region{min-width:30%;flex-shrink: 0;color:#666;font-size:13px;text-align:right;padding:0 10px}
.trade-item-link .date{max-width:70px;color:#bbb;font-size:12px;text-align:right}


/*推荐资讯*/
.focus-section{display:flex;gap: 30px;}
.focus-section .head{display:flex;line-height:45px;justify-content:space-between;margin-bottom: 10px;}
.focus-section .head .more{color:#999;font-size:13px}
.focus-section .head-title{padding-left:20px;position:relative;font-size: 18px;font-weight: bold;}
.focus-section .head-title:before{content:'';position:absolute;top:50%;left:0;height:40%;width:3px;background:var(--primary-actice);transform:translateY(-50%)}
.focus-section .head .more>i{font-size:15px;margin-left:2px}
.focus-section .focus-left{width: 36%;flex-shrink: 0}
.focus-section .focus-right{flex: 1;}
.focus-section .focus-carousel-box{height:380px;width:100%;overflow:hidden}
.focus-section .banner-card{position:relative;width:100%;height:100%;border-radius:4px;overflow:hidden}
.focus-section .banner-img{width:100%;height:100%;object-fit:cover}
.focus-section .banner-info{position:absolute;bottom:0;left:0;right:0;padding:20px 20px 30px;background:linear-gradient(transparent,rgba(0,0,0,.85));color:#fff}
.focus-section .banner-title{font-size:18px;margin-bottom:6px;font-weight:700}
.focus-section .banner-desc{font-size:13px;opacity:.85;line-height:1.5;height:40px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.focus-section .focus-list{display:flex;gap:20px;width:100%;table-layout:fixed}
.focus-section .focus-list ul{flex:1;width:0;list-style:none;padding:0;margin:0}
.focus-section .focus-list>ul li:not(:first-child){display:flex;align-items:center;width:100%}
.focus-section .focus-list .focus-card{display:flex;gap:12px;background:#f6f6f6;text-decoration:none;position:relative;margin-bottom:6px}
.focus-section .focus-list .focus-card .focus-img{width:140px;height:90px;overflow: hidden;display: block;}
.focus-section .focus-list .focus-card .image{width:100%;height:100%;object-fit:cover;border-radius:2px;}


.focus-section .focus-list .focus-card .title{font-size:15px;font-weight:700;color:#333;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;padding-top:4px;height:46px}
.focus-section .focus-card .read{position:absolute;bottom:5px;right:5px;font-size:11px;color:#999}
.focus-section .focus-card .read>i{font-size: 12px;}
.focus-section .focus-card:hover .title { color: var(--primary-actice); }
.focus-section .focus-card:hover .image {transform:scale(1.05) }

.focus-section .focus-list>ul li:not(:first-child){display:flex;align-items:center;position: relative;}
.focus-section .focus-list>ul li:not(:first-child) a{height:33px;line-height:33px;text-decoration:none;color:#555;font-size:14px;flex:1;width:0;display:block;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all .2s;margin-left: 10px;}
.focus-section .focus-list>ul li:not(:first-child):before{content: '';width: 4px;height: 4px;border-radius: 50%;top: 50%;left: 0;position: absolute;background: #999;transform: translateY(-50%);}
.focus-section .focus-list>ul li:not(:first-child) a:hover{color:var(--primary-actice);padding-left:5px;box-sizing:border-box}



.entry-section{background:#f5f7fa;padding:20px 0}
.entry-container{width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.entry-item{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fff;border-radius:10px;border:1px solid #eee;cursor:pointer;transition:all .25s ease}
.entry-item:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(0,0,0,.08)}
.icon-wrap{width:40px;height:40px;border-radius:50%;background:rgba(43,138,62,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.icon{width:22px;height:22px;color:#2b8a3e;transition:all .25s ease}
.entry-item:hover .icon{color:#f2994a;transform:scale(1.1)}
.text h4{font-size:14px;margin:0;color:#333}
.text p{font-size:12px;color:#777;margin:2px 0 0}

