/* com_list 页面专属样式（自动抽取） */

/* .wrap 沿用全局样式，避免与其他页面顶部位置不一致 */


/*====顶部3个横幅按钮【纯CSS，不调用图片】====*/
.top-buttons-row{
    display:grid;
    grid-template-columns: repeat(3,1fr);
    gap:14px;
    margin:20px 0 28px;
}

.top-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    height:80px;
    border-radius:8px;
    text-decoration:none;
    font-size:20px;
    font-weight:bold;
    transition:all 0.24s;
}

.top-btn.btn-red{
    background:linear-gradient(135deg,#ff5252,#ff2e2e);
    color:#ffffff;
    box-shadow:0 2px 8px rgba(255,82,82,0.25);
}

.top-btn.btn-blue{
    background:linear-gradient(135deg,#42a5f5,#1976d2);
    color:#ffffff;
    box-shadow:0 2px 8px rgba(25,118,210,0.25);
}

.top-btn.btn-orange{
    background:linear-gradient(135deg,#ffca28,#ff9800);
    color:#fff;
    box-shadow:0 2px 8px rgba(255,152,0,0.25);
}

.top-btn:hover{
    transform:translateY(-3px);
}

.top-btn.btn-red:hover{
    box-shadow:0 6px 14px rgba(255,82,82,0.35);
}

.top-btn.btn-blue:hover{
    box-shadow:0 6px 14px rgba(25,118,210,0.35);
}

.top-btn.btn-orange:hover{
    box-shadow:0 6px 14px rgba(255,152,0,0.35);
}


/*====模块公共标题====*/
.block-title{
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:18px;
    color:#2b78d4;
    font-weight:bold;
    border-left:5px solid #4096ee;
    padding-left:12px;
    margin:30px 0 16px;
}

.block-title a.more{
    font-size:14px;
    color:#777;
    font-weight:normal;
    text-decoration:none;
}

.block-title a.more:hover{
    color:#4096ee;
}


/*====商家卡片网格 PC4列====*/
.shop-card-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
    margin-bottom:20px;
}

.shop-card{
    background:#ffffff;
    border:1px solid #e5edf8;
    border-radius:8px;
    overflow:hidden;
    transition:0.24s;
}

.shop-card:hover{
    box-shadow:0 4px 16px rgba(64,150,238,0.15);
    transform:translateY(-2px);
}

/*纯css灰色占位图，不加载图片*/
.card-thumb{
    width:100%;
    height:140px;
    background:#f4f7fb;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#999;
    font-size:14px;
}

.card-thumb a{
    display:block;
    width:100%;
    height:100%;
}

.card-body{
    padding:12px 14px;
}

.shop-name{
    margin-bottom:6px;
}

.shop-name a{
    font-size:15px;
    font-weight:bold;
    color:#222;
    text-decoration:none;
    display:block;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.shop-name a:hover{
    color:#4096ee;
}

.shop-desc{
    font-size:13px;
    color:#666;
    height:38px;
    overflow:hidden;
    line-height:1.45;
    margin-bottom:8px;
}

.shop-info-row{
    font-size:12.5px;
    color:#555;
    margin:4px 0;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.shop-info-row b{
    color:#f5222d;
}

.shop-date{
    margin-top:8px;
    font-size:12px;
    color:#999;
    text-align:right;
}


/*====最新资讯卡片====*/
.news-card-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
    margin-bottom:24px;
}

.news-card{
    background:#fff;
    border:1px solid #e5edf8;
    border-radius:8px;
    overflow:hidden;
    transition:0.24s;
}

.news-card:hover{
    box-shadow:0 4px 16px rgba(64,150,238,0.15);
    transform:translateY(-2px);
}

.news-thumb{
    width:100%;
    height:130px;
    background:#f4f7fb;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#999;
}

.news-body{
    padding:12px 14px;
}

.news-title a{
    font-size:14.5px;
    font-weight:bold;
    color:#222;
    text-decoration:none;
    display:block;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    margin-bottom:6px;
}

.news-title a:hover{
    color:#4096ee;
}

.news-intro{
    font-size:13px;
    color:#666;
    height:36px;
    overflow:hidden;
    line-height:1.45;
}

.news-date{
    font-size:12px;
    color:#999;
    margin-top:8px;
    text-align:right;
}


/*====分页容器====*/
.pagination-wrap{
    margin:30px 0;
}


/*====移动端适配====*/
@media(max-width:992px){
    .shop-card-grid,
    .news-card-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){
    .top-buttons-row{
        grid-template-columns:1fr;
        gap:10px;
    }
    .top-btn{
        height:68px;
        font-size:18px;
    }
}

@media(max-width:480px){
    .shop-card-grid,
    .news-card-grid{
        grid-template-columns:1fr;
    }
}
