/* ===== Ant Design v5 标准设计规范 =====
    Design Token
    colorPrimary          #1677FF  blue-6  主色
    colorPrimary-hover    #4096FF  blue-5
    colorPrimary-active   #0958D9  blue-7
    colorPrimary-bg       #E6F4FF  blue-1  主色浅底
    colorSuccess          #52C41A  green-6
    colorWarning          #FAAD14  gold-6
    colorError            #FF4D4F  red-5   价格/强调
    colorText             rgba(0,0,0,0.88)   标题
    colorTextSecondary    rgba(0,0,0,0.65)   正文
    colorTextTertiary     rgba(0,0,0,0.45)   辅助
    colorTextQuaternary   rgba(0,0,0,0.25)   占位/禁用
    colorBorder           #D9D9D9  gray-5
    colorBorderSecondary  #F0F0F0  gray-3
    colorBgLayout         #F5F5F5  gray-2
    colorBgContainer      #FFFFFF
    colorFillTertiary     #F5F5F5  gray-2 (hover底)
    colorFillQuaternary   #FAFAFA  gray-1 (斑马纹)
    borderRadius          6px
    borderRadiusSM       4px
    fontSize              14px
    motionDurationMid     0.2s
*/

 /* ---- 基础重置 ---- */
 html{
     -webkit-tap-highlight-color: transparent;
 }
 body{
     min-height: 100vh;
     height: 100vh;
     overflow: hidden;
     display: flex;
     flex-direction: column;
     line-height: 1.5715;
     font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", sans-serif;
     font-size: 14px;
     background: #F5F5F5;
     color: rgba(0, 0, 0, 0.88);
 }
 a, button, .view-screen, .cat-link, .brand-link{
     -webkit-tap-highlight-color: transparent;
     -webkit-user-select: none;
     user-select: none;
 }
 a:focus, button:focus{
     outline: none;
 }
 input, textarea{
     -webkit-user-select: text;
     user-select: text;
 }
 ::selection{
     background: rgba(22, 119, 255, 0.16);
     color: inherit;
 }

 /* ---- 报价列表单元格 (型号左 / 价格右) ---- */
.table_list .row{
    display: flex;
    width: 100%;
    min-width: 0;
}
.col-xs-3 {
    float: none;
    flex: 0 0 6.5rem;
    width: 6.5rem;
    min-width: 6.5rem;
    max-width: 6.5rem;
    box-sizing: border-box;
    font-family: inherit;
    font-size: 1rem;
    border-top: 1px solid #F0F0F0;
    border-right: 1px solid #F0F0F0;
    padding: 0.2rem 0.35rem;
    text-align: center;
    white-space: nowrap;
    transition: background 0.2s;
}
.col-xs-4 {
    float: none;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    box-sizing: border-box;
    font-family: inherit;
    font-size: 1rem;
    color: rgba(0, 0, 0, 0.88);
    padding: 0.2rem;
    border-top: 1px solid #F0F0F0;
    border-left: 1px solid #F0F0F0;
    border-right: 1px solid #F0F0F0;
    overflow-wrap: anywhere;
    transition: background 0.2s;
}

 /* ---- 顶部导航栏 ---- */
 .b2bheader{
     position: relative !important;
     display: block;
     width: 100% !important;
     max-width: 100% !important;
     box-sizing: border-box;
     flex: 0 0 auto;
     top: auto !important;
     left: 0 !important;
     right: 0 !important;
     height: auto !important;
     background: #FFFFFF;
     border-bottom: 1px solid #F0F0F0;
     border-top: 0 !important;
     border-left: 0 !important;
     border-right: 0 !important;
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
     z-index: 100;
 }

 /* ---- 页面标题 (Ant Design PageHeader) ---- */
 .view-title-bg{
     background-color: #1677FF;
     padding: 0.5rem 1rem;
     text-align: center;
     box-shadow: 0 2px 8px rgba(5, 145, 255, 0.15);
 }
 .brand-lockup{
     display: inline-flex;
     align-items: center;
     gap: 0.5rem;
     min-width: 0;
 }
 .brand-logo{
     width: 2.25rem;
     height: 2.25rem;
     object-fit: contain;
     flex: 0 0 auto;
 }
 .view-title-text{
     font-size: 1.15rem;
     font-weight: 600;
     color: #FFFFFF;
     letter-spacing: 1px;
     display: inline-block;
 }

 /* ---- 搜索栏 (Ant Design Input.Search + Button) ---- */
 .search-bar{
     display: flex;
     width: 100%;
     box-sizing: border-box;
     align-items: center;
     gap: 0.65rem;
     padding: 0.5rem 0.714rem;
     background: #FFFFFF;
 }
 .search-bar form{
     flex: 1;
     min-width: 0;
     display: flex;
     align-items: stretch;
     gap: 0.5rem;
     margin: 0;
 }
 .search-bar > .consult-btn,
 .search-bar > .member-badge,
 .search-bar > .member-login{ margin-left: 0.1rem; }
 .search-input-wrap{
     flex: 1;
     display: flex;
     align-items: center;
     background: #F5F5F5;
     border: 1px solid #F0F0F0;
     border-radius: 6px;
     padding: 0.357rem 0.714rem;
     transition: all 0.2s;
 }
 .search-input-wrap:focus-within{
     border-color: #1677FF;
     background: #FFFFFF;
     box-shadow: 0 0 0 2px rgba(5, 145, 255, 0.1);
 }
 .search-input-wrap .search-icon{
     color: rgba(0, 0, 0, 0.45);
     font-size: 1rem;
     margin-right: 0.4rem;
     flex-shrink: 0;
 }
 .search-input-wrap input{
     border: none !important;
     background: transparent !important;
     outline: none !important;
     box-shadow: none !important;
     width: 100%;
     height: 1.5rem;
     font-size: 0.928rem;
     color: rgba(0, 0, 0, 0.88) !important;
     padding: 0;
 }
 .search-input-wrap input::placeholder {
     color: rgba(0, 0, 0, 0.25) !important;
 }

 /* ---- 筛选按钮 (Ant Design Button default) ---- */
 .yk_btn {
     flex-shrink: 0;
     padding: 0.5rem 1rem;
     font-size: 0.928rem;
     font-weight: 400;
     border: 1px solid #1677FF !important;
     color: #1677FF !important;
     background: #FFFFFF !important;
     border-radius: 6px !important;
     line-height: 1.2;
     cursor: pointer;
     transition: all 0.2s;
 }
 .yk_btn:hover {
     background: #1677FF !important;
     color: #FFFFFF !important;
     border-color: #1677FF !important;
 }
 .yk_btn:active {
     background: #0958D9 !important;
     border-color: #0958D9 !important;
 }
 /* ---- 登录用户图标 ---- */
 .member-badge{
     flex: 0 0 2rem;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 2rem;
     height: 2rem;
     padding: 0;
     background: #F0F7FF;
     border: 1px solid #BAE0FF;
     border-radius: 50%;
     color: #1677FF;
     white-space: nowrap;
 }
 .member-badge .member-name,
 .member-badge .member-phone{ display: none; }
 .member-badge .member-logout{
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 100%;
     height: 100%;
     padding: 0;
     border: 0;
     color: #1677FF;
     text-decoration: none;
     font-size: 0;
     cursor: pointer;
 }
 .member-badge .member-logout::before{
     content: '\e008';
     font-family: 'Glyphicons Halflings';
     font-size: 1rem;
     line-height: 1;
 }
 .member-badge:hover{ background: #E6F4FF; border-color: #69B1FF; }
 .member-badge .member-logout:hover{ color: #0958D9; }
 @media screen and (max-width: 600px){
     .search-bar{ flex-wrap: nowrap; gap: 0.4rem; }
     .search-bar form{ flex: 1 1 auto; min-width: 0; }
     .search-bar .member-badge,
     .search-bar .member-login,
     .search-bar .consult-btn{ margin-left: 0; }
     .member-badge{ flex-basis: 1.85rem; width: 1.85rem; height: 1.85rem; }
 }
 @media screen and (max-width: 480px){
     .member-badge .member-phone{ display: none; }
 }
 .consult-btn{
     flex-shrink: 0;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     padding: 0.5rem 0.85rem;
     font-size: 0.928rem;
     color: #FFFFFF !important;
     background: #52C41A;
     border: 1px solid #52C41A;
     border-radius: 6px;
     line-height: 1.2;
     text-decoration: none !important;
     cursor: pointer;
 }
 .consult-btn:hover,.consult-btn:focus{
     color: #FFFFFF !important;
     background: #73D13D;
     border-color: #73D13D;
 }
 .consult-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:1000;width:min(22rem,calc(100vw - 24px));max-height:70vh;overflow:auto;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:.75rem;text-align:left}
 .consult-popover[hidden]{display:none!important}.consult-popover-title{font-weight:700;padding:.2rem .25rem .65rem;border-bottom:1px solid #f0f0f0}.consult-person{padding:.75rem .25rem;border-bottom:1px solid #f0f0f0}.consult-person:last-child{border-bottom:0}.consult-person-main{display:flex;align-items:center;gap:.5rem}.consult-person-main strong{font-size:1rem}.consult-person-main span{color:#666;font-size:.86rem}.consult-person-meta{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.consult-person-meta a,.consult-person-meta button{border:0;border-radius:6px;padding:.4rem .55rem;font-size:.86rem;cursor:pointer;text-decoration:none}.consult-person-meta a{background:#e6f4ff;color:#1677ff}.consult-person-meta button{background:#f6ffed;color:#389e0d}

 .sx_box-top_botom { top: 5.4rem !important; bottom: 10px; }
 .gg_divider {
     border: none;
     border-top: 1px solid #F0F0F0;
     margin: 0;
 }
 /* 下拉面板/筛选面板定位 (适配新 header 高度) */
 .all_win, .pp_win { top: 5.4rem !important; }
 .price_win { top: 5.4rem !important; }
 .sx_box { top: 5.4rem !important; }

 .all_win, .pp_win, .price_win, .sx_box:not(#sx_div){
     display: none !important;
 }

 /* ---- 筛选快捷区标签 (Ant Design CheckableTag) ---- */
 #sx_div{
     position: relative !important;
     flex: 0 0 auto;
     top: auto !important;
     bottom: auto !important;
     max-height: none !important;
     overflow: visible !important;
     background: #FFFFFF;
     -webkit-overflow-scrolling: touch;
 }
 #sx_div .xs_ul{
     padding: 0.5rem 0.6rem !important;
     border: none !important;
 }
 #sx_div .xs_ul li{
     height: auto !important;
     overflow: visible !important;
     padding: 0.7rem 0 !important;
     margin-bottom: 0 !important;
     border-bottom: 1px solid #F5F5F5;
     white-space: normal !important;
 }
 #sx_div .xs_ul li:last-child{
     border-bottom: none;
 }
 #sx_div .xs_ul li label{
     margin-right: 0.5rem;
     font-weight: 600;
     display: inline-block;
     text-decoration: none !important;
     vertical-align: top;
 }
 #sx_div .xs_ul li label a{
     color: rgba(0, 0, 0, 0.85) !important;
 }
 #sx_div .xs_ul li a{
     display: inline-flex;
     align-items: center;
     min-height: 2rem;
     margin: 0.2rem 0.25rem;
     padding: 0 0.45rem;
     line-height: 1.8;
     border: 1px solid transparent;
     border-radius: 4px;
     white-space: nowrap;
     text-decoration: none !important;
 }
 /* 分类与品牌选中态：反馈限制在标签内部，避免整行变蓝 */
 .cat-link.active,
 .brand-link.active,
 #ppli label a.active {
     color: #1677FF !important;
     font-weight: 600;
     background: #F0F7FF;
     border-color: #91CAFF;
 }
 .cat-link:active,
 .brand-link:active,
 .view-screen:active {
     color: #0958D9 !important;
     background: #E6F4FF;
 }
 #ppli{
     display: flex;
     align-items: flex-start;
     flex-wrap: wrap;
     gap: 0.2rem 0.25rem;
 }
 #ppli > label{
     flex: 0 0 auto;
     margin: 0 !important;
 }
 #ppli .brand-link{
     flex: 0 0 auto;
     max-width: 100%;
     overflow: hidden;
     text-overflow: ellipsis;
 }
 /* 品牌标签隐藏过渡 */
 .brand-link {
     transition: opacity 0.2s;
 }
 .brand-link.hidden-by-cat {
     display: none !important;
 }
 .view-screen{
     color: rgba(0, 0, 0, 0.65) !important;
     font-size: 14px !important;
     transition: all 0.2s;
 }
 .view-screen:hover {
     color: #1677FF !important;
 }

 /* ---- 分类导航 (Ant Design Menu) ---- */
 .all_win{
     box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08) !important;
     border-radius: 0 0 8px 8px !important;
 }
 .all_win li h5, .all_win li h5 a {
     color: #1677FF !important;
     font-weight: 500;
 }
 .all_win dt, .all_win dt a {
     color: rgba(0, 0, 0, 0.88) !important;
 }
 .all_win dt a:hover, .all_win dd a:hover {
     color: #1677FF !important;
 }

 /* ---- 品牌选择标签 (Ant Design Tag) ---- */
 .pp_win{
     box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08) !important;
 }
 .pp_win a {
     border: 1px solid #D9D9D9 !important;
     color: rgba(0, 0, 0, 0.65) !important;
     border-radius: 4px !important;
     background: #FAFAFA !important;
     transition: all 0.2s;
 }
 .pp_win a:hover {
     border-color: #1677FF !important;
     color: #1677FF !important;
     background: #FFFFFF !important;
 }
 .pp_win a.red, .pp_win a.on {
     border: 1px solid #1677FF !important;
     color: #1677FF !important;
     background: #E6F4FF !important;
 }
 .pp_win a.on:after {
     border-color: #1677FF !important;
     border-top-color: transparent !important;
     border-left-color: transparent !important;
 }

 /* ---- 价格选择 ---- */
 .price_win{
     box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08) !important;
     border-radius: 4px !important;
 }
 .price_win a {
     color: rgba(0, 0, 0, 0.65) !important;
     transition: all 0.2s;
 }
 .price_win a:hover {
     color: #1677FF !important;
     background: #F5F5F5 !important;
 }
 .price_win .red {
     color: #FF4D4F !important;
 }

 /* ---- 筛选面板 (Ant Design Drawer) ---- */
 .sx_box {
     background: #FFFFFF !important;
 }
 .sx_box .xs_ul {
     border: 1px solid #F0F0F0 !important;
     border-radius: 6px;
 }
 .sx_box .xs_ul a {
     color: rgba(0, 0, 0, 0.65) !important;
     transition: all 0.2s;
 }
 .sx_box .xs_ul a:hover {
     color: #1677FF !important;
 }
 .sx_box .xs_ul a.red {
     color: #1677FF !important;
 }

 #quoteLoadState{
     padding: 1rem;
     text-align: center;
     color: rgba(0, 0, 0, 0.45);
     background: #FFFFFF;
 }
 #quoteLoadState.error{
     color: #FF4D4F;
 }

 #maindatadiv{
     position: relative !important;
     flex: 1 1 auto;
     min-height: 0;
     top: auto !important;
     bottom: auto !important;
     margin: 0 !important;
     overflow-y: auto !important;
     overflow-x: hidden !important;
     -webkit-overflow-scrolling: touch;
 }

 /* ---- 报价列表 (Ant Design List) ---- */
 .table_list .row {
     transition: background 0.2s;
 }
 .table_list .row:nth-child(odd) {
     background-color: #FAFAFA !important;
 }
 .table_list .row:hover {
     background-color: #F5F5F5 !important;
 }

 /* ---- 品牌分组标题行 (Ant Design List header) ---- */
 .view-goods-brand{
     background-color: #1677FF !important;
     color: #FFFFFF !important;
     font-size: 1.1rem !important;
     text-align: center;
     font-weight: 500;
     letter-spacing: 0.5px;
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 0.6rem;
 }
 .brand-time{
     font-size: 0.78rem;
     font-weight: 400;
     letter-spacing: 0;
     color: rgba(255, 255, 255, 0.88);
     white-space: nowrap;
 }

 /* ---- 型号与价格 ---- */
 .view-goods-type{
     font-size: 1rem !important;
     color: rgba(0, 0, 0, 0.88) !important;
 }
 .view-quote{
     font-size: 1rem !important;
     color: #FF4D4F !important;
     font-weight: 500;
 }
 .view-quote-color{
     font-size: 1rem !important;
     color: #FF4D4F !important;
     font-weight: 500;
 }
 .view-goods-padding{
     padding: 0.242rem 0.2rem;
 }

 /* ---- 滚动公告 ---- */
 #quoteNotice{
     position: relative !important;
     flex: 0 0 auto;
     top: auto !important;
     left: auto !important;
     width: 100% !important;
     height: auto !important;
     margin: 0 !important;
     padding: 0.35rem 0.7rem;
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
     background: #FAFAFA;
     border-top: 1px solid #F0F0F0;
     border-bottom: 1px solid #F0F0F0;
 }
 .view-scroll-notic{
     display: block;
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
 }
 .view-scroll-notic span a{
     color: rgba(0, 0, 0, 0.65) !important;
 }

 /* ---- 底部 ---- */
 .ykbj_foot{ display:none !important; }
 .ykbj_foot div, .ykbj_foot div a{ display:none !important; }

 /* ---- 主按钮 (Ant Design Button primary) ---- */
 .btn-warning {
     background: #1677FF !important;
     border-color: #1677FF !important;
     border-radius: 6px !important;
     color: #FFFFFF !important;
     box-shadow: 0 2px 0 rgba(5, 145, 255, 0.12);
     transition: all 0.2s;
 }
 .btn-warning:hover {
     background: #4096FF !important;
     border-color: #4096FF !important;
 }
 .btn-warning:active {
     background: #0958D9 !important;
     border-color: #0958D9 !important;
 }

 @media screen and (max-width: 720px) {
     .col-xs-3 { font-size: 1rem; }
     .col-xs-4 { font-size: 1rem; }
     #sx_div .xs_ul{
         padding: 0.28rem 0 0.28rem 0.1rem !important;
     }
     #sx_div .xs_ul li{
         padding: 0.3rem 0 !important;
     }
     #sx_div .xs_ul li a{
         min-height: 1.65rem;
         margin: 0.08rem 0.08rem;
         padding: 0 0.25rem;
         line-height: 1.5;
         font-size: 12px !important;
     }
     #kmli{
       display: flex;
       align-items: center;
       flex-wrap: nowrap;
       justify-content: space-between;
       gap: 0.1rem;
       width: 100%;
       min-height: 3.2rem;
       overflow-x: auto;
       overflow-y: hidden;
       white-space: nowrap;
       -webkit-overflow-scrolling: touch;
       scrollbar-width: none;
       padding-left: 0 !important;
       padding-right: 0;
   }
   #kmli::-webkit-scrollbar{ display: none; }
   #kmli > label,
   #kmli > .cat-link{
       display: flex !important;
       align-items: center;
       flex: 1 1 0;
       min-width: 0;
       margin: 0 !important;
       padding: 0 !important;
       line-height: 1;
   }
   #kmli .cat-link{
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 3.2rem;
      min-width: 0;
      margin: 0 !important;
      padding: 0 0.15rem !important;
      font-size: clamp(12px, 3.5vw, 16px) !important;
      font-weight: 700;
      line-height: 1.2;
      white-space: nowrap;
  }
    #ppli{
        gap: 0.08rem 0.08rem;
        padding-left: 0 !important;
    }
    #kmli > label .cat-link{
        width: 100%;
        min-width: 0;
        min-height: 3.2rem;
        justify-content: center;
        padding: 0 0.15rem;
        font-size: clamp(12px, 3.2vw, 16px) !important;
        font-weight: 700;
        line-height: 1.2;
    }
    #ppli > label a{
        min-width: auto;
        min-height: 2.35rem;
        justify-content: flex-start;
        padding: 0 0.8rem;
        font-size: 20px !important;
        font-weight: 700;
        line-height: 1.25;
    }
    #ppli .brand-link{
        font-size: 12.5px !important;
        letter-spacing: 0;
    }
 }
 @media screen and (max-width: 374px) {
     #ppli .brand-link{
        font-size: 12px !important;
        padding-left: 0.18rem;
         padding-right: 0.18rem;
     }
 }
