/*
* B2B GEO - 统一样式表
* 前后台共用
*/

/* ====== 全局重置 ====== */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: "Microsoft YaHei", Arial, sans-serif;
background: #f5f5f5;
color: #333;
}

/* ====== 后台公共样式 ====== */
.header {
background: linear-gradient(120deg, #ff8a00 0%, #ff5000 100%);
color: white;
padding: 20px 0;
box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.header-content {
max-width: 1200px; margin: 0 auto; padding: 0 20px;
display: flex; justify-content: space-between; align-items: center;
}
.header h1 { font-size: 24px; }
.header-right { display: flex; gap: 20px; align-items: center; }
.header-right a { color: white; text-decoration: none; padding: 8px 16px; border-radius: 5px; transition: background 0.3s; }
.header-right a:hover { background: rgba(255,255,255,0.2); }

.container { max-width: 1200px; margin: 20px auto; padding: 0 20px; }

.sidebar {
width: 200px; float: left;
background: white; border-radius: 8px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1); padding: 20px 0; margin-right: 20px;
}
.sidebar .list-group { border-radius: 0; }
.sidebar .list-group-item { padding: 12px 20px; color: #333; text-decoration: none; display: block; border: none; border-bottom: 1px solid #eee; border-radius: 0; }
.sidebar .list-group-item i { margin-right: 8px; }
.sidebar .list-group-item.active { background: #ff6a00; color: white; border-color: #ff6a00; }
.sidebar .list-group-item.active:hover, .sidebar .list-group-item.active:focus { background: #ff6a00; color: white; }
.sidebar .list-group-item:hover:not(.active) { background: #fff7f0; color: #ff6a00; }

.content {
margin-left: 220px;
background: white; border-radius: 8px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1); padding: 30px;
}
.footer { text-align: center; padding: 20px; color: #666; font-size: 14px; margin-top: 30px; }
.clear { clear: both; }

/* ====== 前台 - 忘记密码页 (forgot_password.php) ====== */
body.forgot-page {
font-family: "Microsoft YaHei", Arial, sans-serif;
background: #f5f5f5;
min-height: 100vh; display: flex; justify-content: center; align-items: center;
}
.forgot-container { background: white; border-radius: 12px; box-shadow: 0 10px 40px rgba(0,0,0,0.08); width: 420px; padding: 44px; border-top: 4px solid #ff6a00; }
.forgot-header { text-align: center; margin-bottom: 30px; }
.forgot-header h2 { color: #222; font-size: 26px; margin-bottom: 10px; }
.forgot-header p { color: #666; font-size: 14px; }
.form-group { margin-bottom: 20px; }
.form-group label { display: block; margin-bottom: 8px; color: #333; font-size: 14px; font-weight: bold; }
.form-group label.required::after { content: " *"; color: #ff4444; }
.form-group input { width: 100%; padding: 12px; border: 1px solid #ddd; border-radius: 5px; font-size: 14px; transition: border 0.3s; }
.form-group input:focus { outline: none; border-color: #ff6a00; }
.captcha-group { display: flex; gap: 10px; align-items: flex-end; }
.captcha-group input { flex: 1; }
.captcha-img { background: #f0f0f0; padding: 5px; border-radius: 5px; cursor: pointer; user-select: none; border: 1px solid #ddd; }
.captcha-img img { display: block; }
.btn-submit { width: 100%; padding: 12px; background: #ff6a00; color: white; border: none; border-radius: 5px; font-size: 16px; cursor: pointer; transition: background 0.2s; }
.btn-submit:hover { background: #ff5000; }
.error-message { background: #ff6b6b; color: white; padding: 10px; border-radius: 5px; margin-bottom: 20px; text-align: center; }
.success-message { background: #51cf66; color: white; padding: 10px; border-radius: 5px; margin-bottom: 20px; text-align: center; }
.new-password { background: #e3f2fd; border: 2px solid #2196f3; padding: 15px; border-radius: 5px; margin-bottom: 20px; text-align: center; }
.new-password h3 { color: #1976d2; margin-bottom: 10px; }
.new-password .password { font-size: 24px; font-weight: bold; color: #0d47a1; letter-spacing: 2px; padding: 10px; background: white; border-radius: 5px; margin: 10px 0; }
.new-password p { color: #666; font-size: 12px; }
.back-link { text-align: center; margin-top: 20px; font-size: 14px; }
.back-link a { color: #ff6a00; text-decoration: none; }
.back-link a:hover { text-decoration: underline; }

/* ====== 前台 - 登录页 (login.php) ====== */
body.login-page {
font-family: "Microsoft YaHei", Arial, sans-serif;
background: #f5f5f5;
min-height: 100vh; display: flex; justify-content: center; align-items: center;
}
.login-container { background: white; border-radius: 12px; box-shadow: 0 10px 40px rgba(0,0,0,0.08); width: 420px; padding: 44px; border-top: 4px solid #ff6a00; }
.login-header { text-align: center; margin-bottom: 28px; }
.login-header .brand { font-size: 30px; font-weight: 800; color: #ff6a00; margin-bottom: 12px; }
.login-header h2 { color: #222; font-size: 24px; margin-bottom: 8px; }
.login-header p { color: #666; font-size: 13px; }
.btn-login { width: 100%; padding: 12px; background: #ff6a00; color: white; border: none; border-radius: 5px; font-size: 16px; cursor: pointer; transition: background 0.2s; }
.btn-login:hover { background: #ff5000; }
.register-link { text-align: center; margin-top: 20px; font-size: 14px; }
.register-link a { color: #ff6a00; text-decoration: none; }
.register-link a:hover { text-decoration: underline; }

/* ====== 前台 - 注册页 (reg.php) ====== */
body.reg-page {
font-family: "Microsoft YaHei", Arial, sans-serif;
background: #f5f5f5;
min-height: 100vh; display: flex; justify-content: center; align-items: center;
}
.register-container { background: white; border-radius: 12px; box-shadow: 0 10px 40px rgba(0,0,0,0.08); width: 460px; padding: 44px; border-top: 4px solid #ff6a00; }
.register-header { text-align: center; margin-bottom: 28px; }
.register-header .brand { font-size: 30px; font-weight: 800; color: #ff6a00; margin-bottom: 12px; }
.register-header h2 { color: #222; font-size: 24px; margin-bottom: 8px; }
.register-header p { color: #666; font-size: 13px; }
.required::after { content: " *"; color: #ff6b6b; font-weight: bold; }
.check-result { font-size: 12px; margin-top: 5px; padding: 5px; border-radius: 3px; }
.check-result.available { color: #51cf66; background: #f0faf1; }
.check-result.unavailable { color: #ff6b6b; background: #fff0f0; }
.btn-register { width: 100%; padding: 12px; background: #ff6a00; color: white; border: none; border-radius: 5px; font-size: 16px; cursor: pointer; transition: background 0.2s; }
.btn-register:hover { background: #ff5000; }
.login-link { text-align: center; margin-top: 20px; font-size: 14px; }
.login-link a { color: #ff6a00; text-decoration: none; }
.login-link a:hover { text-decoration: underline; }

/* ====== 后台 - 修改密码页 (console/change_password.php) ====== */
.change-password-page .container { max-width: 500px; margin: 50px auto; padding: 0 20px; }
.change-password-page .card { background: white; border-radius: 10px; padding: 40px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
.change-password-page .card h2 { text-align: center; margin-bottom: 30px; }
.change-password-page .form-group { margin-bottom: 20px; }
.change-password-page .form-group label { display: block; margin-bottom: 8px; font-weight: bold; }
.change-password-page .form-group input { width: 100%; padding: 12px; border: 1px solid #ddd; border-radius: 5px; font-size: 14px; }
.change-password-page .btn { width: 100%; padding: 12px; background: linear-gradient(120deg, #ff8a00 0%, #ff5000 100%); color: white; border: none; border-radius: 5px; font-size: 16px; cursor: pointer; margin-top: 10px; }
.change-password-page .btn:hover { opacity: 0.9; }
.change-password-page .msg { padding: 10px; border-radius: 5px; margin-bottom: 20px; text-align: center; color: white; }
.change-password-page .msg.error { background: #ff6b6b; }
.change-password-page .msg.success { background: #51cf66; }
.change-password-page .tips { background: #fff7f0; padding: 15px; border-radius: 5px; margin-bottom: 20px; font-size: 13px; }
.change-password-page .tips li { margin-bottom: 5px; }

/* ====== 后台 - 公司资料/发布信息共用 (console/company.php & publish.php) ====== */
.content h2,
.publish-content h2 { font-size: 24px; margin-bottom: 20px; padding-bottom: 15px; border-bottom: 2px solid #ff6a00; }
.content .msg,
.publish-content .msg { padding: 15px; margin-bottom: 20px; border-radius: 4px; }
.content .msg.success,
.publish-content .msg.success { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
.content .msg.error,
.publish-content .msg.error { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
.form-group { margin-bottom: 20px; }
.form-group label { display: block; margin-bottom: 8px; color: #555; }
.form-group input,
.form-group select,
.form-group textarea { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; font-size: 14px; }
.form-group textarea { min-height: 100px; resize: vertical; }
#editor-toolbar { border: 1px solid #ddd; border-bottom: none; border-radius: 4px 4px 0 0; background: #fafafa; }
#editor-content { border: 1px solid #ddd; border-radius: 0 0 4px 4px; min-height: 300px; }
.form-row { display: flex; gap: 20px; }
.form-row .form-group { flex: 1; }
.cascade-select { display: flex; gap: 10px; }
.cascade-select select { flex: 1; padding: 10px; border: 1px solid #ddd; border-radius: 4px; font-size: 14px; }
.btn-submit { background: #ff6a00; color: white; padding: 12px 30px; border: none; border-radius: 4px; font-size: 16px; cursor: pointer; transition: background .2s; }
.btn-submit:hover { background: #ff5000; }
.required-field { color: red; }
.content input:focus, .content select:focus, .content textarea:focus,
.publish-content input:focus, .publish-content select:focus, .publish-content textarea:focus,
.change-password-page input:focus { border-color: #ff6a00; outline: none; box-shadow: 0 0 0 3px rgba(255,106,0,.12); }
h3.form-section { margin-top: 30px; margin-bottom: 15px; padding-bottom: 8px; color: #333; font-size: 16px; font-weight: bold; border-bottom: 1px solid #eeeeee; }

/* ====== 后台 - 会员首页 (console/index.php) ====== */
.welcome-card { background: linear-gradient(120deg, #ff8a00 0%, #ff5000 100%); color: white; padding: 40px; border-radius: 10px; margin-bottom: 30px; }
.welcome-card h2 { font-size: 32px; margin-bottom: 10px; }
.stats-row { display: flex; gap: 20px; margin-bottom: 30px; }
.stat-card { flex: 1; background: white; padding: 25px; border-radius: 10px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
.stat-card h3 { font-size: 14px; color: #666; margin-bottom: 10px; }
.stat-card .number { font-size: 32px; font-weight: bold; color: #ff6a00; }
.quick-actions { background: white; padding: 30px; border-radius: 10px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
.quick-actions h3 { margin-bottom: 20px; }
.action-buttons { display: flex; gap: 15px; flex-wrap: wrap; }
.action-btn { display: flex; align-items: center; gap: 10px; padding: 15px 25px; background: #f8f9fa; border-radius: 8px; text-decoration: none; color: #333; transition: all 0.3s; }
.action-btn:hover { background: #ff6a00; color: white; transform: translateY(-2px); }

/* ====== 后台 - 产品管理页 (console/products.php) ====== */
.products-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
.products-table th, .products-table td { padding: 12px 15px; text-align: left; border-bottom: 1px solid #eee; }
.products-table th { background: #f8f9fa; font-weight: bold; color: #333; }
.products-table tr:hover { background: #f8f9fa; }
.status-badge { display: inline-block; padding: 3px 10px; border-radius: 12px; font-size: 12px; }
.status-badge.status-1 { background: #d4edda; color: #155724; }
.status-badge.status-0 { background: #f8d7da; color: #721c24; }
.status-badge.status-2 { background: #fff3cd; color: #856404; }
.action-links a { margin-right: 10px; text-decoration: none; font-size: 13px; }
.action-links a.view { color: #ff6a00; }
.action-links a.edit { color: #28a745; }
.action-links a.delete { color: #dc3545; }
.pagination { margin-top: 20px; text-align: center; }
.pagination a, .pagination span { display: inline-block; padding: 8px 12px; margin: 0 3px; border: 1px solid #ddd; border-radius: 4px; text-decoration: none; color: #333; }
.pagination .current { background: #ff6a00; color: white; border-color: #ff6a00; }
.empty-tip { text-align: center; padding: 60px 20px; color: #999; }
.empty-tip a { color: #ff6a00; text-decoration: none; }

/* ====== 后台 - 产品详情页 (console/product_detail.php) ====== */
.detail-card { max-width: 900px; }
.detail-row { display: flex; padding: 12px 0; border-bottom: 1px solid #f0f0f0; }
.detail-label { width: 120px; color: #666; flex-shrink: 0; }
.detail-value { flex: 1; color: #333; }
.detail-content { margin-top: 20px; padding: 20px; background: #fafafa; border-radius: 4px; min-height: 200px; }
.btn-back { display: inline-block; padding: 10px 20px; background: #6c757d; color: white; text-decoration: none; border-radius: 4px; margin-top: 20px; }
.btn-back:hover { background: #5a6268; }
.btn-edit { display: inline-block; padding: 10px 20px; background: #ff6a00; color: white; text-decoration: none; border-radius: 4px; margin-top: 20px; margin-left: 10px; transition: background .2s; }
.btn-edit:hover { background: #ff5000; }
.product-row{font-size:14px;transition:all 0.2s;}

/* ============================================================
   前台首页 - Alibaba 风格主题 (index.php)  [新增]
   ============================================================ */
body.front-page { background: #f5f5f5; color: #333; }

/* 容器在首页语境下去掉默认 20px 外边距 */
.b2b-topbar .container,
.b2b-header .container,
.b2b-catnav .container,
.b2b-hero .container,
.b2b-footer .container,
.b2b-section .container { margin: 0 auto; }

/* 顶部细栏 */
.b2b-topbar { background: #f5f5f5; border-bottom: 1px solid #eee; font-size: 13px; color: #666; }
.b2b-topbar .container { display: flex; justify-content: space-between; align-items: center; height: 36px; }
.b2b-topbar a { color: #666; text-decoration: none; margin-left: 18px; transition: color .2s; }
.b2b-topbar a:hover { color: #ff6a00; }
.b2b-topbar .tb-left i { margin-right: 5px; color: #ff6a00; }

/* 主头部（吸顶） */
.b2b-header { background: #fff; border-bottom: 1px solid #eee; position: sticky; top: 0; z-index: 200; }
.b2b-header .container, .b2b-header .container-fluid { display: flex; align-items: center; gap: 30px; padding: 16px 20px; }
.b2b-logo { display: flex; flex-direction: column; text-decoration: none; line-height: 1; white-space: nowrap; }
.b2b-logo .cn { font-size: 26px; font-weight: 800; color: #222; }
.b2b-logo .cn b { color: #ff6a00; }
.b2b-logo .en { font-size: 11px; color: #999; letter-spacing: 1px; margin-top: 4px; }

/* 搜索框 */
.b2b-search { flex: 1; display: flex; max-width: 680px; height: 44px; border: 2px solid #ff6a00; border-radius: 4px; overflow: hidden; background: #fff; }
.b2b-search select { border: none; border-right: 1px solid #eee; background: #fafafa; padding: 0 10px; font-size: 14px; color: #333; outline: none; cursor: pointer; max-width: 130px; }
.b2b-search input { flex: 1; border: none; outline: none; padding: 0 14px; font-size: 14px; }
.b2b-search button { width: 66px; border: none; background: #ff6a00; color: #fff; font-size: 18px; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background .2s; }
.b2b-search button:hover { background: #ff5000; }

/* 头部右侧操作 */
.b2b-header-actions { display: flex; align-items: center; gap: 14px; white-space: nowrap; }
.b2b-header-actions a { text-decoration: none; font-size: 14px; transition: color .2s; }
.b2b-btn-login { color: #ff6a00; font-weight: 600; }
.b2b-btn-login:hover { text-decoration: underline; }
.b2b-btn-reg { background: #ff6a00; color: #fff; padding: 8px 18px; border-radius: 4px; font-weight: 600; }
.b2b-btn-reg:hover { background: #ff5000; }
.b2b-user { display: flex; align-items: center; gap: 10px; font-size: 14px; color: #333; }
.b2b-user .avatar { width: 32px; height: 32px; border-radius: 50%; background: #ff6a00; color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; }
.b2b-user a { color: #666; }
.b2b-user a:hover { color: #ff6a00; }
.b2b-user .logout { color: #999; }

/* 分类导航 */
.b2b-catnav { background: #fff; border-bottom: 1px solid #eee; }
.b2b-catnav .container, .b2b-catnav .container-fluid { display: flex; align-items: center; gap: 4px; height: 48px; padding: 0 20px; }
.b2b-catnav a { text-decoration: none; color: #444; font-size: 14px; padding: 8px 14px; border-radius: 4px; white-space: nowrap; transition: all .2s; }
.b2b-catnav a:hover { color: #ff6a00; background: #fff7f0; }
.b2b-catnav a.all { color: #ff6a00; font-weight: 700; }

/* ====== 全部分类 下拉菜单 (mega menu, hover 展开) ====== */
.b2b-allcat {
    position: relative;
    height: 48px;
    display: flex;
    align-items: center;
}
.b2b-allcat > a.all {
    height: 48px;
    display: flex;
    align-items: center;
    padding: 0 16px;
    border-radius: 0;
    background: #ff6a00;
    color: #fff !important;
}
.b2b-allcat > a.all:hover {
    background: #ff5000;
    color: #fff !important;
}
.b2b-allcat-panel {
    position: absolute;
    top: 100%;
    left: 0;
    width: 820px;
    max-width: 94vw;
    background: #fff;
    border: 1px solid #eee;
    border-top: 3px solid #ff6a00;
    box-shadow: 0 12px 30px rgba(0,0,0,.14);
    display: none;
    z-index: 600;
    padding: 20px 22px;
}
.b2b-allcat:hover .b2b-allcat-panel { display: block; }
.b2b-cat-panel-head {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding-bottom: 14px;
    margin-bottom: 18px;
    border-bottom: 1px solid #f0f0f0;
}
.b2b-cat-panel-head .t { font-size: 17px; font-weight: 800; color: #222; }
.b2b-cat-panel-head .s { font-size: 12px; color: #999; }
.b2b-cat-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 26px;
    max-height: 70vh;
    overflow-y: auto;
}
.b2b-cat-col { width: calc(33.333% - 18px); min-width: 210px; }
.b2b-cat-col-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 700;
    color: #222;
    text-decoration: none;
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid #eee;
    transition: color .15s;
}
.b2b-cat-col-title::before {
    content: "";
    width: 4px;
    height: 15px;
    background: #ff6a00;
    border-radius: 2px;
    flex-shrink: 0;
}
.b2b-cat-col-title:hover { color: #ff6a00; }
.b2b-cat-tags { display: flex; flex-wrap: wrap; gap: 7px 8px; }
.b2b-cat-tags a {
    display: inline-block;
    padding: 5px 12px;
    background: #f5f6f8;
    border: 1px solid #eef0f2;
    border-radius: 14px;
    font-size: 13px;
    color: #666;
    text-decoration: none;
    transition: all .15s;
}
.b2b-cat-tags a:hover { background: #ff6a00; border-color: #ff6a00; color: #fff; }
.b2b-cat-tags .empty { color: #bbb; font-size: 13px; padding: 4px 0; }

/* 导航条固定链接 */
.b2b-catnav a.nav-link { color: #333; font-weight: 500; }
.b2b-catnav a.nav-link:hover { color: #ff6a00; background: transparent; }

/* Hero 横幅 */
.b2b-hero { background: linear-gradient(120deg, #ff8a00 0%, #ff5000 100%); color: #fff; }
.b2b-hero .container { display: flex; align-items: center; justify-content: space-between; padding: 50px 20px; gap: 30px; flex-wrap: wrap; }
.b2b-hero h1 { font-size: 34px; font-weight: 800; margin-bottom: 14px; letter-spacing: .5px; }
.b2b-hero p { font-size: 16px; opacity: .95; margin-bottom: 24px; max-width: 520px; line-height: 1.6; }
.b2b-hero .cta { display: inline-block; background: #fff; color: #ff5000; font-weight: 700; padding: 12px 30px; border-radius: 4px; text-decoration: none; font-size: 15px; transition: background .2s; }
.b2b-hero .cta:hover { background: #fff3e8; }
.b2b-stats { display: flex; gap: 28px; background: rgba(255,255,255,.16); padding: 22px 28px; border-radius: 12px; backdrop-filter: blur(4px); }
.b2b-stats .num { font-size: 28px; font-weight: 800; }
.b2b-stats .lbl { font-size: 13px; opacity: .92; margin-top: 2px; }

/* 通用区块 */
.b2b-section { background: #fff; margin: 16px auto; border-radius: 8px; padding: 24px; max-width: 1200px; }
.b2b-section-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.b2b-section-head h2 { font-size: 20px; font-weight: 700; color: #222; display: flex; align-items: center; gap: 8px; }
.b2b-section-head h2::before { content: ''; width: 4px; height: 18px; background: #ff6a00; border-radius: 2px; display: inline-block; }
.b2b-more { color: #999; font-size: 13px; text-decoration: none; transition: color .2s; }
.b2b-more:hover { color: #ff6a00; }

/* 产品网格 */
.b2b-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 16px; }
.b2b-pcard { border: 1px solid #eee; border-radius: 8px; overflow: hidden; transition: all .2s; background: #fff; display: flex; flex-direction: column; }
.b2b-pcard:hover { border-color: #ffd0b0; box-shadow: 0 6px 18px rgba(255,106,0,.12); transform: translateY(-3px); }
.b2b-pcard .thumb { height: 158px; background: linear-gradient(135deg, #fef0e6, #ffe2cc); display: flex; align-items: center; justify-content: center; color: #ff8a3d; font-size: 42px; }
.b2b-pcard .body { padding: 12px 14px; flex: 1; display: flex; flex-direction: column; }
.b2b-pcard .title { font-size: 14px; color: #222; line-height: 1.4; height: 39px; overflow: hidden; text-decoration: none; display: block; transition: color .2s; }
.b2b-pcard .title:hover { color: #ff6a00; }
.b2b-pcard .price { color: #ff5000; font-weight: 800; font-size: 18px; margin: 8px 0 4px; }
.b2b-pcard .price small { font-size: 12px; font-weight: 400; }
.b2b-pcard .meta { font-size: 12px; color: #999; margin-bottom: 8px; }
.b2b-pcard .sup { font-size: 12px; color: #666; display: flex; align-items: center; gap: 5px; border-top: 1px solid #f5f5f5; padding-top: 8px; margin-top: auto; }
.b2b-pcard .sup i { color: #ff6a00; }

/* 供应商网格 */
.b2b-sgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; }
.b2b-scard { border: 1px solid #eee; border-radius: 8px; padding: 20px 16px; text-align: center; transition: all .2s; }
.b2b-scard:hover { border-color: #ffd0b0; box-shadow: 0 6px 18px rgba(255,106,0,.1); }
.b2b-scard .logo { width: 54px; height: 54px; border-radius: 50%; background: linear-gradient(135deg, #ff8a00, #ff5000); color: #fff; font-size: 22px; font-weight: 700; display: flex; align-items: center; justify-content: center; margin: 0 auto 10px; }
.b2b-scard .name { font-size: 14px; font-weight: 600; color: #222; margin-bottom: 6px; }
.b2b-scard .tag { font-size: 12px; color: #999; margin-bottom: 10px; }
.b2b-scard a.shop { font-size: 13px; color: #ff6a00; text-decoration: none; }
.b2b-scard a.shop:hover { text-decoration: underline; }

/* 行业网格 */
.b2b-igrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 14px; }
.b2b-icard { border: 1px solid #eee; border-radius: 8px; padding: 18px 14px; text-align: center; text-decoration: none; transition: all .2s; }
.b2b-icard:hover { border-color: #ffd0b0; background: #fff7f0; transform: translateY(-2px); }
.b2b-icard i { font-size: 28px; color: #ff6a00; display: block; margin-bottom: 8px; }
.b2b-icard .n { font-size: 14px; color: #333; font-weight: 600; }

/* 会员控制台面板（已登录） */
.b2b-console { background: linear-gradient(120deg, #fff7f0, #fff); border: 1px solid #ffe0cc; border-radius: 8px; padding: 24px; }
.b2b-console h3 { font-size: 18px; color: #222; margin-bottom: 6px; }
.b2b-console p { color: #888; font-size: 13px; margin-bottom: 18px; }
.b2b-console-actions { display: flex; gap: 14px; flex-wrap: wrap; }
.b2b-console-actions a { display: flex; align-items: center; gap: 8px; padding: 14px 22px; background: #fff; border: 1px solid #ffe0cc; border-radius: 8px; text-decoration: none; color: #333; font-size: 14px; font-weight: 600; transition: all .2s; }
.b2b-console-actions a:hover { background: #ff6a00; color: #fff; border-color: #ff6a00; }
.b2b-console-actions a i { font-size: 18px; }

/* 访客引导（未登录） */
.b2b-guest { background: linear-gradient(120deg, #fff7f0, #fff); border: 1px solid #ffe0cc; border-radius: 8px; padding: 20px 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.b2b-guest .txt { color: #666; font-size: 14px; }
.b2b-guest .txt i { color: #ff6a00; margin-right: 6px; }
.b2b-guest .btns a { text-decoration: none; padding: 9px 20px; border-radius: 4px; font-size: 14px; font-weight: 600; transition: all .2s; }
.b2b-guest .btns .outline { border: 1px solid #ff6a00; color: #ff6a00; }
.b2b-guest .btns .outline:hover { background: #fff0e6; }
.b2b-guest .btns .solid { background: #ff6a00; color: #fff; }
.b2b-guest .btns .solid:hover { background: #ff5000; }

/* 页脚 */
.b2b-footer { background: #222; color: #bbb; margin-top: 28px; padding: 40px 0 20px; }
.b2b-footer .container { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 30px; }
.b2b-footer h4 { color: #fff; font-size: 15px; margin-bottom: 14px; }
.b2b-footer a { color: #bbb; text-decoration: none; font-size: 13px; display: block; margin-bottom: 8px; transition: color .2s; }
.b2b-footer a:hover { color: #ff6a00; }
.b2b-footer .copy { border-top: 1px solid #333; margin-top: 24px; padding-top: 16px; text-align: center; font-size: 12px; color: #777; }
.b2b-footer .copy a { display: inline; color: #777; }

/* 响应式 */
@media (max-width: 768px) {
  .b2b-header .container, .b2b-header .container-fluid { flex-wrap: wrap; gap: 14px; }
  .b2b-search { max-width: 100%; order: 3; flex-basis: 100%; }
  .b2b-hero h1 { font-size: 26px; }
  .b2b-stats { width: 100%; justify-content: space-around; }
  .b2b-guest { flex-direction: column; align-items: flex-start; }
}

/* ===== 资讯中心 News & Insights (GEO) ===== */
.b2b-breadcrumb{font-size:13px;color:#888;padding:14px 0;line-height:1.6}
.b2b-breadcrumb a{color:#ff6a00}
.b2b-breadcrumb a:hover{text-decoration:underline}
.b2b-news-hero{background:linear-gradient(135deg,#ff8a00,#ff5000);color:#fff;border-radius:10px;padding:26px 28px;margin-bottom:22px}
.b2b-news-hero h1{font-size:26px;font-weight:800;margin:0 0 10px}
.b2b-news-hero .lead{margin:0;font-size:14px;line-height:1.8;opacity:.95;max-width:880px}
.b2b-catindex{margin-bottom:26px}
.b2b-catindex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.b2b-catindex-col{background:#fff;border:1px solid #eee;border-radius:8px;padding:14px 16px}
.b2b-catindex-top{display:block;font-size:15px;font-weight:700;color:#222;margin-bottom:8px;padding-bottom:8px;border-bottom:2px solid #ff6a00}
.b2b-catindex-col ul{list-style:none;margin:0;padding:0}
.b2b-catindex-col li{margin:4px 0}
.b2b-catindex-col li a{color:#555;font-size:13px}
.b2b-catindex-col li a:hover{color:#ff6a00}
.b2b-newslist-wrap .b2b-count{font-size:13px;color:#999;font-weight:400}
.b2b-newslist{list-style:none;margin:0;padding:0}
.b2b-newsitem{background:#fff;border:1px solid #f0f0f0;border-radius:8px;padding:16px 18px;margin-bottom:12px;transition:.15s}
.b2b-newsitem:hover{border-color:#ff6a00;box-shadow:0 2px 12px rgba(255,106,0,.08)}
.b2b-newsitem h3{margin:0 0 8px;font-size:17px;line-height:1.5}
.b2b-newsitem h3 a{color:#222}
.b2b-newsitem h3 a:hover{color:#ff6a00}
.b2b-news-meta{font-size:12px;color:#999;display:flex;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.b2b-news-meta .cat{color:#ff6a00;background:#fff3ea;padding:1px 8px;border-radius:10px}
.b2b-news-sum{margin:0;color:#666;font-size:13px;line-height:1.7}
.b2b-empty{color:#999;padding:30px;text-align:center}
.b2b-pager{display:flex;gap:10px;align-items:center;justify-content:center;margin:20px 0;font-size:14px}
.b2b-pager a{color:#ff6a00;border:1px solid #ffd2b0;padding:6px 14px;border-radius:6px}
.b2b-pager a:hover{background:#ff6a00;color:#fff}
.b2b-pager .cur{color:#888}
.b2b-article-layout{display:grid;grid-template-columns:1fr 280px;gap:26px;align-items:start}
.b2b-article{background:#fff;border:1px solid #f0f0f0;border-radius:10px;padding:26px 30px;min-width:0}
.b2b-article-head h1{font-size:26px;line-height:1.4;margin:6px 0 12px;color:#1a1a1a}
.b2b-article-meta{font-size:13px;color:#999;display:flex;gap:16px;flex-wrap:wrap;border-bottom:1px solid #f0f0f0;padding-bottom:12px;margin-bottom:16px}
.b2b-article-meta .cat{color:#ff6a00}
.b2b-article-summary{background:#fff9f4;border-left:3px solid #ff6a00;padding:10px 14px;color:#555;font-size:14px;line-height:1.8;border-radius:0 6px 6px 0;margin-bottom:18px}
.b2b-article-content{font-size:15px;line-height:1.9;color:#333}
.b2b-article-content p{margin:0 0 14px}
.b2b-article-content div{margin:0 0 10px}
.b2b-faq{margin-top:26px;border-top:1px solid #f0f0f0;padding-top:18px}
.b2b-faq h2{font-size:19px;margin:0 0 12px}
.b2b-faq h2::before{content:'';display:inline-block;width:4px;height:16px;background:#ff6a00;border-radius:2px;margin-right:8px;vertical-align:-2px}
.b2b-faq-item{padding:12px 0;border-bottom:1px dashed #eee}
.b2b-faq-item dt{font-weight:700;color:#222;margin-bottom:6px;font-size:15px}
.b2b-faq-item dd{margin:0;color:#555;font-size:14px;line-height:1.8}
.b2b-article-side{display:flex;flex-direction:column;gap:16px}
.b2b-side-box{background:#fff;border:1px solid #f0f0f0;border-radius:8px;padding:14px 16px}
.b2b-side-box h3{font-size:15px;margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid #ff6a00}
.b2b-side-box ul{list-style:none;margin:0;padding:0}
.b2b-side-box li{margin:8px 0;font-size:13px;line-height:1.5}
.b2b-side-box li a{color:#555}
.b2b-side-box li a:hover{color:#ff6a00}
@media (max-width:768px){.b2b-article-layout{grid-template-columns:1fr}.b2b-article-side{order:-1}}

/* 导航当前页高亮 (b2b-catnav active) */
.b2b-catnav a.nav-link.active { color: #ff6a00; font-weight: 700; position: relative; }
.b2b-catnav a.nav-link.active::after {
    content: ''; position: absolute; left: 14px; right: 14px; bottom: 4px;
    height: 2px; background: #ff6a00; border-radius: 2px;
}

/* 找回密码入口链接 */
.forgot-link { color:#ff6a00; text-decoration:none; display:block; margin-bottom:10px; font-size:14px; }
.forgot-link:hover { text-decoration:underline; }

/* 订阅套餐高亮（前台导航 + 后台侧边栏） */
.b2b-catnav a.nav-vip { font-weight: 700; background: linear-gradient(120deg, #ff8a00 0%, #ff5000 100%); padding: 6px 16px; border-radius: 20px; color: #fff; box-shadow: 0 2px 8px rgba(255,80,0,.25); }
.b2b-catnav a.nav-vip:hover { color: #fff; background: linear-gradient(120deg, #ff6a00 0%, #ff3d00 100%); }
.sidebar .list-group-item.vip-link { background: linear-gradient(120deg, #fff7f0 0%, #ffe9d6 100%); border-left: 3px solid #ff6a00; color: #ff5000; font-weight: 600; }
.sidebar .list-group-item.vip-link:hover:not(.active) { background: #ffe9d6; color: #ff5000; }
.sidebar .list-group-item.vip-link.active { background: linear-gradient(120deg, #ff8a00 0%, #ff5000 100%); border-left: 3px solid #ff5000; color: #fff; }

/* ========== 会员后台整版宽度 100% ========== */
/* 顶部栏与栏目导航容器全宽 */
.b2b-header .container,
.b2b-catnav .container,
.b2b-header .container-fluid,
.b2b-catnav .container-fluid { max-width: 100% !important; }
/* 主内容区容器（紧接栏目导航之后）全宽，保留左右内边距避免贴边 */
nav.b2b-catnav + .container { max-width: 100% !important; padding-left: 24px; padding-right: 24px; }
nav.b2b-catnav + .container-fluid { max-width: 100% !important; padding-left: 24px; padding-right: 24px; }
