/* ========== 案例详情页自定义样式 ========== */
#think_page_trace_open {display: none;}
input::placeholder {color: #999;}
*{box-sizing:border-box}

/* 原有基础样式 */
.detail_3 .content_center .hang1 .hang1_title{font-size: 16px;padding: 10px;font-weight: bold;position: relative;background:#f7f7f7; margin: 10px 0;}
.detail_3 .content_center .hang1 .hang1_title::after{content: "";width: 3px; border-radius:3px;height: 100%; display: block;top: 0; left: 0px;position: absolute;background: #795548;}
.detail_3{ justify-content:space-between; }
.detail_3 .content_left{background: #fcfcfc;padding:20px 0;position: sticky;left: 0px;top: 0px;z-index: 10;width: 100px;height: 100px;display: flex;align-items: center;flex-direction: column;transform: translateY(160px)}
.detail_3 .content_center .hang .hang_title{font-size: 18px;padding: 10px;font-weight: bold;position: relative;background:#f7f7f7;margin: 10px 0;}
.detail_3 .content_center .hang .hang_title::after{content: "";width: 3px; border-radius:3px;height: 100%; display: block;top: 0; left: 0px;position: absolute;background: #795548;}
.detail_3 .content_center{max-width: 860px;padding:0;}
.detail_3 .content_center .title{font-size:24px;text-align: center;line-height: 31px;}
.detail_3 .content_center .tag{display:flex;align-items:center;justify-content: center;flex-wrap:wrap;color: #959595;margin-top: 10px;}
.detail_3 .content_center .title2{margin-top: 35px;font-size: 14px; color: #252525;}
.detail_3 .content_center .content{margin-top: 40px; margin: 20px 15px;}
.detail_3 .content_center .case_list{margin-top: 40px;display:flex;align-items: center;flex-wrap: wrap;margin: 0 5px;}
.detail_3 .content_center .case_list .title{font-size: 24px;margin-top: 30px;text-align: center;}
.detail_3 .content_center .case_list .case_item{padding: 10px;}
.detail_3 .content_center .case_list .case{display:block;margin-top: 30px;position: relative;cursor:pointer;}
.detail_3 .content_center .case_list .case .case_info{position: absolute;left: 0;bottom:0;background:rgba(0,0,0,0.42);width:100%;height:60px;padding: 10px;box-sizing: border-box;}
.detail_3 .content_center .case_list .case .case_info .case_title{font-size: 18px;color:#fff;text-overflow: ellipsis;overflow: hidden;white-space: nowrap;}
.detail_3 .content_center .case_list .case .case_info .case_tag{display:flex;align-items:center;flex-wrap:wrap;color: #fff;}
.detail_3 .content_right{padding:0;}
.detail_3 .content_right .info{border:1px solid #f3f3f3;border-top: 2px solid #e5493a;padding: 10px 10px 10px 10px;text-align:center;}
.detail_3 .content_right .info img{width: 90px;height: 90px;border-radius: 50%;}
.detail_3 .content_right .info .tx{text-align: center;padding: 5px 0px 0px 5px;display: flex;}
.detail_3 .content_right .info .author{font-size: 20px;color: #333;margin-top: 10px;}
.detail_3 .content_right .info .authors{text-align: left;font-size: 10px;color: #333;margin-top: 5px;width: 300px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.detail_3 .content_right .info .small_title{font-size: 20px;color: #333;margin-top: 10px;}
.detail_3 .content_right .info .introduce{display:inline-block;font-size: 16px;color: #646464;margin-top: 6px;line-height: 2em;border-bottom: 2px solid #646464;}
.detail_3 .content_right .message{margin-top: 40px;padding:40px 10px;border:1px solid #f3f3f3;border-top: 2px solid #e5493a;text-align: center;border-bottom-left-radius: 5px;border-bottom-right-radius: 5px;}
.detail_3 .content_right .message .title{font-size: 24px;color:#363636;}
.detail_3 .content_right .message .small_title{font-size: 14px;color:#959595;margin-top: 8px;}
.detail_3 .content_right .message .input{margin-top: 15px;}
.detail_3 .content_right .message .input input{width:100%;border: 1px solid #f3f3f3;border-radius:5px;color: #666;}
.detail_3 .content_right .message .submit{width: 100%;border-radius: 5px;height: 40px;margin-top: 15px;color: #fff;background-color: #e5493a;text-align: center;}
.detail_3 .content_right .case_list{margin-top: 40px;border:1px solid #f3f3f3;border-top: 2px solid #e5493a;}
.detail_3 .content_right .case_list .title{font-size: 24px;margin-top: 30px;text-align: center;}
.detail_3 .content_right .case_list .case{display:block;margin-top: 30px;position: relative;cursor:pointer;}
.detail_3 .content_right .case_list .case .case_info{position: absolute;left: 0;bottom:0;background:rgba(0,0,0,0.42);width:100%;height:60px;padding: 10px;box-sizing: border-box;}
.detail_3 .content_right .case_list .case .case_info .case_title{font-size: 18px;color:#fff;text-overflow: ellipsis;overflow: hidden;white-space: nowrap;}
.detail_3 .content_right .case_list .case .case_info .case_tag{display:flex;align-items:center;flex-wrap:wrap;color: #fff;}
.detail_3 .content_right .case_list .more{text-align:center;margin-top:30px;padding-bottom:30px}
.detail_3 .content_right .case_list .more .btn{background-color: #363636;color:#fff;border: none;border-radius: 2px;display: inline-block;height: 36px;line-height: 36px;padding: 0 16px;text-transform: uppercase;vertical-align: middle;}
.pagination > li > a:hover{background: #161a33;color:#fff;}

/* case-detail-extra.css
 * 案例详情页（case_detail）新增样式
 * 来源：原内联在模板里的「顶部效果图 / 同风格横排案例 / 点赞 / 随机角标 / 点赞动画」样式，
 *       已抽出为独立文件。配合帝国CMS案例详情页模板使用。
 * 放置位置：站点 /pub/css/ 目录下（或你统一管理样式的目录），并在模板 <head> 引入。
 */

/* ===== 顶部效果图（客厅 / 餐厅，优先客厅） ===== */
.detail_3 .content_center .top-case-img{margin: 5px 0 20px;}
.detail_3 .content_center .top-case-img img{border-radius:4px;display:block;}

/* ===== 同风格横排案例 ===== */
.detail_3 .content_center .same_style{margin-top:40px;}
.detail_3 .content_center .same_style .same_title{font-size:24px;text-align:center;margin:10px 0 20px;}
.detail_3 .content_center .same_style .row{display:flex;gap:15px;flex-wrap:wrap;}
.detail_3 .content_center .same_style .row .case{flex:1 1 0;min-width:200px;display:block;position:relative;cursor:pointer;border-radius:4px;overflow:hidden;}
.detail_3 .content_center .same_style .row .case img{width:100%;height:200px;object-fit:cover;display:block;}
.detail_3 .content_center .same_style .row .case .case_info{position:absolute;left:0;bottom:0;background:rgba(0,0,0,0.42);width:100%;padding:10px;box-sizing:border-box;}
.detail_3 .content_center .same_style .row .case .case_info .case_title{font-size:16px;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.detail_3 .content_center .same_style .row .case .case_info .case_tag{display:flex;align-items:center;flex-wrap:wrap;color:#fff;font-size:12px;margin-top:4px;}
.detail_3 .content_center .same_style .same_more{text-align:center;margin-top:20px;}
.detail_3 .content_center .same_style .same_more .btn{background-color:#363636;color:#fff;border:none;border-radius:2px;display:inline-block;height:36px;line-height:36px;padding:0 16px;}

/* 随机补齐案例的角标（与真正的同风格案例区分） */
.detail_3 .content_center .same_style .row .case .rec_badge{position:absolute;top:0;right:0;background:#363636;color:#fff;font-size:12px;padding:2px 8px;border-bottom-left-radius:4px;z-index:2;}

/* ===== 点赞功能 ===== */
.like-wrap{margin:40px 0 10px;text-align:center;}
.like-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 28px;border:1px solid #e5493a;border-radius:30px;color:#e5493a;font-size:16px;cursor:pointer;transition:.3s;background:#fff;text-decoration:none;}
.like-btn:hover{background:#e5493a;color:#fff;}
.like-btn.liked{background:#e5493a;color:#fff;cursor:default;}
.like-btn .like-heart{font-size:18px;}
.like-tip{display:block;margin-top:8px;color:#959595;font-size:13px;}
.like-count{display:inline-block;}
.like-btn.pop .like-heart{animation: likePop .45s ease;}
.like-btn.pop .like-count{animation: countPop .45s ease;}

/* 点赞成功弹动动画 */
@keyframes likePop{0%{transform:scale(1);}30%{transform:scale(1.5);}60%{transform:scale(.85);}100%{transform:scale(1);}}
@keyframes countPop{0%{transform:scale(1);}40%{transform:scale(1.4);}100%{transform:scale(1);}}

/* 窄屏：同风格案例改为纵向堆叠 */
@media (max-width:768px){
    .detail_3 .content_center .same_style .row .case{flex:1 1 100%;}
}


/* 图集左侧导航 */
.gallery-wrap{
    display:flex !important;
    gap:20px !important;
    position:relative !important;
    align-items:flex-start !important;
    overflow:visible !important;
}
.gallery-nav{
    width:70px !important;
    flex-shrink:0 !important;
    position:sticky !important;
    top:260px !important;
    border-right:1px solid #eee !important;
    padding-right:10px !important;
    z-index:2 !important;
    margin:0 !important;
}
.gallery-nav ul{
    list-style:none !important;
    padding:0 !important;
    margin:0 !important;
}
.gallery-nav li{
    padding:10px 8px;
    font-size:13px;
    color:#666;
    cursor:pointer;
    border-left:2px solid transparent;
    margin-bottom:4px;
    transition:.2s;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.gallery-nav li:hover{color:#e5493a;background:#f9f9f9}
.gallery-nav li.active{
    color:#e5493a;
    border-left-color:#e5493a;
    background:#fef4f4;
    font-weight:600;
}
.gallery-imgs{flex:1;min-width:0}

/* 预约设计按钮 */
.order-btn{
    display:block;width:100%;height:40px;line-height:40px;
    background:#e5493a;color:#fff;text-align:center;
    border-radius:4px;font-size:15px;font-weight:600;
    margin-top:15px;cursor:pointer;text-decoration:none;
}
.order-btn:hover{opacity:.9;color:#fff}

/* 右侧固定报价表单 */
.price-form{
    border:1px solid #f3f3f3;
    border-top:2px solid #e5493a;
    padding:15px;
    margin-top:40px;
    position:sticky;
    top:130px;
    background:#fff;
    border-radius:0 0 5px 5px;
    z-index:2;
}
.price-form .title{
    font-size:18px;
    font-weight:700;
    text-align:center;
    margin-bottom:5px;
}
.price-form .sub{
    font-size:12px;
    color:#999;
    text-align:center;
    margin-bottom:15px;
}
.price-form .form-item{
    margin-bottom:10px;
}
.price-form .form-item input{
    width:100%;
    height:36px;
    line-height:36px;
    padding:0 10px;
    border:1px solid #eee;
    border-radius:4px;
    font-size:13px;
    outline:none;
}
.price-form .form-item input:focus{
    border-color:#e5493a;
}
.price-form .submit-btn{
    width:100%;
    height:52px;
    line-height:38px;
    background:#e5493a;
    color:#fff;
    border:none;
    border-radius:4px;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
}

/* 点赞模块 */
.case-digg-box{
    text-align: center;
    padding: 28px 15px;
    margin: 20px 15px;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    clear: both;
}
.digg-title{
    font-size: 15px;
    color: #333;
    margin-bottom: 14px;
    font-weight: 600;
}
.case-digg-btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 260px;
    padding: 13px 35px;
    background: #e5493a;
    color: #fff;
    border: none;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    transition: .2s;
    user-select: none;
}
.case-digg-btn:hover{
    background: #c0392b;
    color: #fff;
}
.case-digg-btn.done{
    background: #c0392b;
}
.case-digg-btn .digg-icon{
    font-size: 18px;
}
.case-digg-btn .digg-text{
    letter-spacing: 1px;
}
.case-digg-btn .digg-num{
    display: inline-block;
    min-width: 32px;
    padding: 3px 10px;
    background: #fff;
    color: #e5493a;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 800;
    vertical-align: middle;
}
.case-digg-btn.done .digg-num{
    color: #c0392b;
}
.digg-tip{
    font-size: 12px;
    color: #999;
    margin-top: 12px;
}

/* 点赞数行 */
.case-digg-box .digg-count{ font-size: 14px; color: #666; margin-bottom: 12px; }
.case-digg-box .digg-count b{ color: #e5493a; font-size: 20px; font-weight: 800; margin: 0 4px; }
/* 点赞后的按钮状态 */
.case-digg-btn.done{ background: #c0392b; cursor: default; opacity: .85; }
.case-digg-btn.done .digg-num{ color: #c0392b; }

/* 预约设计师弹窗 */
.order-designer-mask{
    display: none;
    position: fixed;
    left: 0; top: 0;
    width: 100vw; height: 100vh;
    background: rgba(0,0,0,.65);
    z-index: 10000;
    align-items: center;
    justify-content: center;
}
.order-designer-box{
    position: relative;
    width: 420px;
    background: #fff;
    border-radius: 8px;
    padding: 30px 28px;
}
.order-designer-close{
    position: absolute;
    right: 14px; top: 14px;
    width: 28px; height: 28px;
    line-height: 28px;
    text-align: center;
    background: #f2f2f2;
    border-radius: 50%;
    border: none;
    font-size: 18px;
    color: #666;
    cursor: pointer;
}
.order-designer-close:hover{
    background: #e5493a;
    color: #fff;
}
.order-designer-title{
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    color: #222;
    margin-bottom: 20px;
}
.order-designer-form .form-item{
    margin-bottom: 12px;
}
.order-designer-form .form-item input{
    width: 100%;
    height: 40px;
    line-height: 40px;
    padding: 0 12px;
    border: 1px solid #eee;
    border-radius: 4px;
    font-size: 14px;
    outline: none;
    box-sizing: border-box;
}
.order-designer-form .form-item input:focus{
    border-color:#e5493a;
}
.order-designer-submit{
    width: 100%;
    height: 52px;
    line-height: 32px;
    background: #e5493a;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    text-align: center;
}
.order-designer-submit:hover{
    opacity: .9;
}
.order-designer-tip{
    font-size: 12px;
    color: #999;
    text-align: center;
    margin-top: 8px;
}

/* 手机端全量自适应 */
@media (max-width:768px){
    .sidebar-page-container{padding:0 10px !important;}
    .detail_3{display:block !important;}
    .detail_3 .content_center{
        width:100% !important;
        float:none !important;
        padding:0 !important;
    }
    .detail_3 .content_right{
        width:100% !important;
        float:none !important;
        margin:20px 0 0 0 !important;
        padding:0 !important;
    }
    .detail_3 .content_center .title{
        font-size:20px !important;
        line-height:1.4 !important;
        padding:0 10px;
    }
    .detail_3 .content_center .tag{
        font-size:12px !important;
        gap:8px !important;
        padding:0 10px;
        margin-top:8px !important;
    }
    .detail_3 .content_center .tag span{
        padding:0 !important;
    }
    .detail_3 .content_center .content{
        margin:15px 10px !important;
    }
    .detail_3 .content_center .content strong{
        font-size:15px !important;
        display:block;
        margin-bottom:8px;
    }
    .detail_3 .content_center .content span{
        font-size:13px !important;
        line-height:1.8 !important;
    }
    .gallery-wrap{
        display:block !important;
        gap:0 !important;
    }
    .gallery-nav{
        width:100% !important;
        position:sticky !important;
        top:0 !important;
        border-right:none !important;
        border-bottom:1px solid #eee !important;
        padding-right:0 !important;
        padding-bottom:10px !important;
        margin-bottom:15px !important;
        background:#fff;
        z-index:10 !important;
    }
    .gallery-nav ul{
        display:flex !important;
        gap:8px !important;
        overflow-x:auto !important;
        -webkit-overflow-scrolling:touch;
        padding-bottom:5px !important;
    }
    .gallery-nav li{
        border-left:none !important;
        border-bottom:2px solid transparent !important;
        padding:8px 14px !important;
        margin-bottom:0 !important;
        white-space:nowrap !important;
        font-size:13px !important;
        flex-shrink:0;
    }
    .gallery-nav li.active{
        border-left:none !important;
        border-bottom-color:#e5493a !important;
    }
    .gallery-imgs{
        width:100% !important;
    }
    .gallery-imgs .hang{
        margin-bottom:15px !important;
    }
    .gallery-imgs .hang_title{
        font-size:15px !important;
        padding:8px 10px !important;
        margin:0 0 8px 0 !important;
    }
    .detail_3 .content_right .info{
        padding:15px !important;
        text-align:left !important;
    }
    .detail_3 .content_right .info .tx{
        display:flex;
        align-items:center;
        padding:0 !important;
    }
    .detail_3 .content_right .info img{
        width:60px !important;
        height:60px !important;
        margin-right:12px;
    }
    .detail_3 .content_right .info .tx span{
        font-size:1rem !important;
        padding:0 !important;
    }
    .detail_3 .content_right .info .authors{
        width:auto !important;
        font-size:12px !important;
        white-space:normal !important;
        word-break:break-all;
    }
    .order-btn{
        height:44px !important;
        line-height:44px !important;
        font-size:16px !important;
        margin-top:12px !important;
    }
    .detail_3 .content_right .case_list{
        margin-top:20px !important;
    }
    .detail_3 .content_right .case_list .title{
        font-size:18px !important;
        margin-top:15px !important;
    }
    .detail_3 .content_right .case_list .case{
        margin-top:15px !important;
    }
    .detail_3 .content_right .case_list .case img{
        height:160px !important;
        object-fit:cover;
    }
    .detail_3 .content_right .case_list .case .case_info{
        height:50px !important;
        padding:8px !important;
    }
    .detail_3 .content_right .case_list .case .case_title{
        font-size:15px !important;
    }
    .detail_3 .content_right .case_list .case .case_tag{
        font-size:11px !important;
    }
    .detail_3 .content_right .case_list .more{
        margin-top:20px !important;
        padding-bottom:20px !important;
    }
    .price-form{
        position:static !important;
        margin-top:20px !important;
    }
    .price-form .title{
        font-size:16px !important;
    }
    .price-form .form-item input{
        height:40px !important;
        font-size:14px !important;
    }
    .price-form .submit-btn{
        height:42px !important;
        font-size:15px !important;
    }
    .bottom-page{
        margin-top:15px !important;
        padding:0 10px;
        font-size:13px !important;
    }
    .order-designer-box{
        width:90% !important;
        max-width:360px;
        padding:25px 20px !important;
    }
    .order-designer-title{
        font-size:18px !important;
        margin-bottom:15px !important;
    }
    .order-designer-form .form-item input{
        height:42px !important;
        font-size:15px !important;
    }
    .order-designer-submit{
        height:44px !important;
        line-height:44px !important;
        font-size:16px !important;
    }
}
