/* ==========================================================================
   gelufu_boost.css — PC 模板 Boost 覆盖层 (2026-11-11 工业风版)
   色系：石墨灰 #1F2937 主调 + 工业蓝 #1E40AF 辅色 + 警示橙 #F97316 强调
   原则：渐进增强，失败/不触发时回退到原样，绝不改变默认显示
   回滚：删 head.html 末尾一行 <link> 即可，本文件可留可删
   不影响 SEO：爬虫不解析样式，DOM 与语义完全不变
   ========================================================================== */

/* ---------- 1. CSS 变量主题（工业风色板） ---------- */
:root {
    /* 主调 石墨灰 */
    --gf-primary: #1F2937;
    --gf-primary-hover: #374151;
    --gf-primary-deep: #111827;
    /* 辅色 工业蓝 */
    --gf-accent: #1E40AF;
    --gf-accent-hover: #1D4ED8;
    /* 强调 警示橙（CTA） */
    --gf-cta: #F97316;
    --gf-cta-hover: #EA580C;
    /* 功能色 */
    --gf-success: #16A34A;
    --gf-warning: #F59E0B;
    --gf-danger: #DC2626;
    /* 灰阶 */
    --gf-gray-50: #F9FAFB;
    --gf-gray-100: #F3F4F6;
    --gf-gray-200: #E5E7EB;
    --gf-gray-300: #D1D5DB;
    --gf-gray-400: #9CA3AF;
    --gf-gray-500: #6B7280;
    --gf-gray-600: #4B5563;
    --gf-gray-700: #374151;
    --gf-gray-800: #1F2937;
    --gf-gray-900: #111827;
    /* 通用 */
    --gf-radius: 5px;
}

/* ==========================================================================
   3. 工业风色系核心（覆盖现有 Bootstrap 蓝绿橙黄混战）
   ========================================================================== */

/* 顶栏：浅底橙字 → 石墨灰底浅字 */
section.container-fluid[style*="FAFAFA"] {
    background-color: var(--gf-primary) !important;
    color: var(--gf-gray-400) !important;
    border-bottom: none !important;
}

/* 导航：中蓝 → 石墨灰 */
.navbar { background-color: var(--gf-primary) !important; border: none !important; }
.navbar-default .navbar-nav > li > a { color: #fff !important; }
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
    background-color: var(--gf-primary-hover) !important; color: #fff !important;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .open > a:hover {
    background-color: var(--gf-cta) !important; color: #fff !important;
}
.nav_small { background-color: var(--gf-primary-hover) !important; }
.nav_small > li > a:hover { background-color: var(--gf-cta) !important; }

/* 区块标题：亮蓝 → 石墨灰 */
.espcms_title .title_name { color: var(--gf-primary) !important; font-weight: 700 !important; }
.espcms_title .title_name_white { color: #fff !important; }

/* 技术支持区：亮蓝底 → 浅灰底 */
.espcms_about { background-color: var(--gf-gray-100) !important; }
.espcms_about .news_pic_item {
    background: #fff !important;
    border: 1px solid var(--gf-gray-200) !important;
    border-radius: var(--gf-radius) !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    margin-bottom: 20px !important;
}

/* 文章列表页卡片：细线框 + hover 微阴影（克制，列表项多不用橙 hover） */
.espcms_info_list .news_pic_item {
    background: #fff !important;
    border: 1px solid var(--gf-gray-200) !important;
    border-radius: var(--gf-radius) !important;
    padding: 15px !important;
    margin-bottom: 18px !important;
    transition: all .2s ease !important;
}
.espcms_info_list .news_pic_item:hover {
    border-color: var(--gf-gray-300) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,.06) !important;
}

/* "查看详细"按钮（gelufu_boost.js 注入）：工业蓝轮廓，hover 实心 */
.gf-readmore {
    display: inline-block;
    margin-top: 10px;
    padding: 4px 14px;
    border: 1px solid var(--gf-accent);
    color: var(--gf-accent);
    background: transparent;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all .2s ease;
}
.gf-readmore:hover {
    background: var(--gf-accent);
    color: #fff !important;
}

/* 关于区 */
.espcms_partners { background-color: var(--gf-gray-50) !important; }

/* CTA 按钮：绿 → 警示橙 */
.btn-success { background-color: var(--gf-cta) !important; border-color: var(--gf-cta) !important; color: #fff !important; }
.btn-success:hover, .btn-success:focus { background-color: var(--gf-cta-hover) !important; border-color: var(--gf-cta-hover) !important; }

/* 次按钮：蓝 → 石墨灰 */
.btn-info, .btn-primary { background-color: var(--gf-primary-hover) !important; border-color: var(--gf-primary-hover) !important; color: #fff !important; }
.btn-info:hover, .btn-primary:hover { background-color: var(--gf-primary) !important; border-color: var(--gf-primary) !important; }

/* btn-lightgray hover：金黄 → 橙 */
.btn-lightgray:hover, .btn-lightgray:focus {
    background-color: var(--gf-cta-hover) !important;
    border-color: var(--gf-cta-hover) !important;
    color: #fff !important;
}

/* footer：蓝灰 → 深石墨 */
.espcms_footer { background-color: var(--gf-gray-900) !important; }
.espcms_footer a { color: var(--gf-gray-400) !important; }
.espcms_footer a:hover { color: var(--gf-cta) !important; }
.espcms_footer_str { background-color: #0B1220 !important; color: var(--gf-gray-500) !important; }
.espcms_footer_str a { color: var(--gf-gray-400) !important; }

/* 面板头：浅底蓝字 → 石墨灰底白字 */
.panel-info > .panel-heading, .panel-default > .panel-heading {
    background-color: var(--gf-primary) !important;
    color: #fff !important;
    border-color: var(--gf-primary) !important;
}
.panel-info > .panel-heading h3, .panel-default > .panel-heading h3 { color: #fff !important; }

/* 链接：蓝 → 工业深蓝 */
.bann_container a, .espcms_info_list a, .espcms_page_navigation a,
.espcms_info_content a, .info_content a, .info_news_content a { color: var(--gf-accent); }
.bann_container a:hover, .espcms_info_list a:hover, .espcms_info_content a:hover,
.info_content a:hover, .info_news_content a:hover { color: var(--gf-accent-hover); }

/* 栏目页 banner 下蓝色条：蓝渐变 → 石墨灰（.page_bann_title > h2 白字保持，对比度高） */
.bann_container {
    background-image: none !important;
    background-color: var(--gf-primary) !important;
}

/* 左侧菜单链接：灰/蓝 → 工业蓝，hover/active → 警示橙 */
a.link_4242 { color: var(--gf-accent) !important; }
a:hover.link_4242 { color: var(--gf-cta) !important; }
.espcms_page_navigation > li.active,
.espcms_page_navigation > li.active:hover {
    color: var(--gf-cta) !important;
}

/* 树形菜单（espcms_three.css）：默认色 / hover 绿 #0e9d56 → 工业蓝 / 警示橙 */
.treeview li a { color: var(--gf-accent) !important; }
.treeview li a.hover,
.treeview li a:hover { color: var(--gf-cta) !important; }
.treeview a.selected { color: var(--gf-cta) !important; }

/* 面包屑：border 灰 + 链接工业蓝 */
.espcms_path { border-bottom-color: var(--gf-gray-200) !important; }
.espcms_path a { color: var(--gf-accent) !important; }
.espcms_path a:hover { color: var(--gf-cta) !important; }

/* 分页 */
.pagination > .active > a, .pagination > .active > a:hover,
.pagination > .active > span, .pagination > .active > span:hover {
    background-color: var(--gf-cta) !important; border-color: var(--gf-cta) !important; color: #fff !important;
}
.pagination > li > a { color: var(--gf-primary-hover) !important; border-color: var(--gf-gray-300) !important; }
.pagination > li > a:hover { color: var(--gf-cta) !important; border-color: var(--gf-cta) !important; }

/* 标签 */
.label-warning { background-color: var(--gf-warning) !important; color: #fff !important; }
.label-info { background-color: var(--gf-accent) !important; }
.label-success { background-color: var(--gf-success) !important; }
.label-danger { background-color: var(--gf-danger) !important; }

/* 卡片 hover：边框变橙 + 阴影 + 微上浮 */
.espcms_info_list .thumbnail,
.espcms_pic_list .thumbnail,
.photo_list_info .thumbnail {
    border-color: var(--gf-gray-200) !important;
    border-radius: var(--gf-radius) !important;
    transition: all .2s ease !important;
}
.espcms_info_list .thumbnail:hover,
.espcms_pic_list .thumbnail:hover,
.photo_list_info .thumbnail:hover {
    border-color: var(--gf-cta) !important;
    box-shadow: 0 4px 12px rgba(249,115,22,.15) !important;
    transform: translateY(-2px);
}

/* 首页产品图片 img-thumbnail + 文章缩略图：边框统一工业风 + hover 橙 */
.espcms_home_pic_list .img-thumbnail,
.espcms_about .news_pic_item .thumbnail {
    border-color: var(--gf-gray-200) !important;
    border-radius: var(--gf-radius) !important;
    transition: all .2s ease !important;
}
.espcms_home_pic_list .img-thumbnail:hover,
.espcms_about .news_pic_item:hover .thumbnail {
    border-color: var(--gf-cta) !important;
    box-shadow: 0 4px 12px rgba(249,115,22,.15) !important;
}

/* 在线客服悬浮框（im.html）：亮蓝标题 #0098ef → 石墨灰 */
.float-box-content { background-color: #fff !important; border: 1px solid var(--gf-gray-200) !important; }
.float-box-content .toptitle { background-color: var(--gf-primary) !important; }
.float-box-content .addlist { border-top: 2px solid var(--gf-gray-200) !important; }
.float-box-content .addlist a { color: var(--gf-accent); }
.float-box-content .serverbotton .button.red {
    display: inline-block;
    padding: 6px 16px;
    background-color: var(--gf-gray-500) !important;
    color: #fff !important;
    border-radius: 3px;
    text-decoration: none;
    font-size: 13px;
}

/* 正文文字统一 */
body { color: var(--gf-gray-700); }

/* ==========================================================================
   4. 长文章阅读区响应式字号
   ========================================================================== */
.info_content, .espcms_info_content, .info_news_content {
    font-size: clamp(15px, .6vw + 13px, 17px);
    line-height: 1.8;
    word-wrap: break-word;
    color: var(--gf-gray-700);
}
.info_content img, .espcms_info_content img, .info_news_content img {
    max-width: 100%;
    height: auto;
}

/* ==========================================================================
   5. 暗色模式（仅手动触发，不跟随系统；基于工业风色板加深）
   ========================================================================== */
:root[data-theme="dark"] body { background: var(--gf-gray-800); color: var(--gf-gray-200); }
:root[data-theme="dark"] .navbar { background-color: var(--gf-gray-900) !important; }
:root[data-theme="dark"] .espcms_about { background-color: var(--gf-primary-hover) !important; }
:root[data-theme="dark"] .espcms_about .news_pic_item,
:root[data-theme="dark"] .news_pic_item {
    background: var(--gf-gray-800) !important; border-color: var(--gf-gray-600) !important;
}
:root[data-theme="dark"] .espcms_partners { background-color: var(--gf-primary-hover) !important; }
:root[data-theme="dark"] .espcms_footer { background-color: #0B1220 !important; }
:root[data-theme="dark"] .espcms_footer_str { background-color: #000 !important; }
:root[data-theme="dark"] .thumbnail { background: var(--gf-primary-hover) !important; border-color: var(--gf-gray-600) !important; }
:root[data-theme="dark"] .panel-default > .panel-body,
:root[data-theme="dark"] .panel-info > .panel-body {
    background: var(--gf-gray-800) !important; color: var(--gf-gray-200) !important;
}
:root[data-theme="dark"] .panel-default > .panel-heading,
:root[data-theme="dark"] .panel-info > .panel-heading {
    background-color: var(--gf-gray-900) !important;
}
:root[data-theme="dark"] .bann_container a,
:root[data-theme="dark"] .espcms_info_list a,
:root[data-theme="dark"] .info_content a,
:root[data-theme="dark"] .info_news_content a { color: #60A5FA; }
:root[data-theme="dark"] .container { background: var(--gf-gray-800); }
:root[data-theme="dark"] .espcms_info_content,
:root[data-theme="dark"] .info_content,
:root[data-theme="dark"] .info_news_content { color: var(--gf-gray-200); }
:root[data-theme="dark"] table,
:root[data-theme="dark"] .well,
:root[data-theme="dark"] .breadcrumb,
:root[data-theme="dark"] .espcms_search,
:root[data-theme="dark"] .espcms_top_str,
:root[data-theme="dark"] .espcms_about,
:root[data-theme="dark"] .espcms_partners { background-color: var(--gf-gray-800) !important; color: var(--gf-gray-200) !important; }
:root[data-theme="dark"] th { background-color: var(--gf-gray-900) !important; color: #fff !important; }
:root[data-theme="dark"] td { border-color: var(--gf-gray-600) !important; }
:root[data-theme="dark"] .form-control,
:root[data-theme="dark"] input[type="text"],
:root[data-theme="dark"] input[type="email"],
:root[data-theme="dark"] input[type="tel"],
:root[data-theme="dark"] textarea,
:root[data-theme="dark"] select { background-color: var(--gf-gray-800) !important; color: var(--gf-gray-200) !important; border-color: var(--gf-gray-600) !important; }
:root[data-theme="dark"] .alert { color: var(--gf-gray-200) !important; }
:root[data-theme="dark"] .breadcrumb a { color: #60A5FA !important; }
:root[data-theme="dark"] section.container-fluid[style*="FAFAFA"] { background-color: var(--gf-gray-900) !important; color: var(--gf-gray-400) !important; }
:root[data-theme="dark"] .float-box-content { background-color: var(--gf-gray-800) !important; border-color: var(--gf-gray-600) !important; }
:root[data-theme="dark"] .float-box-content .addlist a { color: #60A5FA !important; }
:root[data-theme="dark"] .bann_container { background-color: var(--gf-gray-900) !important; }
:root[data-theme="dark"] .espcms_path { border-bottom-color: var(--gf-gray-600) !important; }
:root[data-theme="dark"] a.link_4242,
:root[data-theme="dark"] .treeview li a,
:root[data-theme="dark"] .espcms_path a { color: #60A5FA !important; }
:root[data-theme="dark"] .espcms_page_navigation > li.active,
:root[data-theme="dark"] .treeview a.selected { color: var(--gf-cta) !important; }

/* 暗色切换按钮（gelufu_boost.js 注入；右下角返回顶部正上方） */
#gf-theme-toggle {
    position: fixed;
    bottom: 140px;
    right: 30px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--gf-primary-hover);
    border: none;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0,0,0,.2);
    z-index: 9998;
    transition: all .25s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
#gf-theme-toggle:hover { background: var(--gf-cta); box-shadow: 0 4px 12px rgba(0,0,0,.3); }
:root[data-theme="dark"] #gf-theme-toggle { background: var(--gf-warning); }

/* 返回顶部按钮（footer 内联 style）：绿 #5cb85c → 石墨灰，hover → 警示橙，与暗色切换按钮统一 */
.back-to-top { background: var(--gf-primary-hover) !important; }
.back-to-top:hover { background: var(--gf-cta) !important; }
:root[data-theme="dark"] .back-to-top { background: var(--gf-gray-600) !important; }
:root[data-theme="dark"] .back-to-top:hover { background: var(--gf-cta) !important; }
:root[data-theme="dark"] .espcms_info_list .news_pic_item {
    background: var(--gf-gray-800) !important;
    border-color: var(--gf-gray-600) !important;
}
:root[data-theme="dark"] .gf-readmore { border-color: #60A5FA; color: #60A5FA; }
:root[data-theme="dark"] .gf-readmore:hover { background: #60A5FA; color: #fff !important; }

/* ==========================================================================
   6. 长文章浮动目录（gelufu_boost.js 注入；仅 ≥1400px 宽屏 + 文章页）
   ========================================================================== */
.gf-toc {
    position: fixed;
    right: 20px;
    top: 160px;
    width: 180px;
    max-height: 55vh;
    overflow: auto;
    font-size: 13px;
    background: #fff;
    border: 1px solid var(--gf-gray-200);
    border-radius: var(--gf-radius);
    padding: 8px 12px;
    z-index: 9000;
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
.gf-toc-title { font-weight: bold; margin-bottom: 6px; color: var(--gf-cta); }
.gf-toc a { display: block; padding: 3px 0; color: var(--gf-gray-600); text-decoration: none; line-height: 1.4; }
.gf-toc a:hover { color: var(--gf-cta); }
:root[data-theme="dark"] .gf-toc { background: var(--gf-primary-hover); border-color: var(--gf-gray-600); }
:root[data-theme="dark"] .gf-toc a { color: var(--gf-gray-400); }

/* ---------- 7. 平板适配（768-1024px）：按钮缩小避免遮挡 ---------- */
@media (max-width: 1024px) {
    #gf-theme-toggle { bottom: 100px; right: 16px; width: 40px; height: 40px; font-size: 18px; }
    .gf-cookie-bar { font-size: 12px; padding: 8px 12px; gap: 8px; }
    .gf-cookie-bar .gf-cookie-btn { padding: 5px 12px; font-size: 12px; }
}

/* ---------- 8. 移动端汉堡菜单色（<768px） ---------- */
@media (max-width: 767px) {
    .navbar-toggle { border-color: var(--gf-cta); }
    .navbar-toggle .icon-bar { background: var(--gf-cta); }
}

/* ---------- 8. 打印样式 ---------- */
@media print {
    .navbar, .esocms_head, section.container-fluid[style*="FAFAFA"], .swiper-container, .espcms_footer,
    .espcms_footer_str, .back-to-top, #gf-theme-toggle, .gf-toc,
    .espcms_search, .espcms_top_str, .gf-cookie-bar { display: none !important; }
    body { font-size: 12pt; color: #000; background: #fff; }
    a { color: #000; text-decoration: underline; }
    a[href]:after { content: " (" attr(href) ")"; font-size: 9pt; }
}

/* ---------- 9. 减少动画偏好 ---------- */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        transition-duration: .01ms !important;
    }
}

/* ==========================================================================
   10. Cookie 同意横条（工业风配色，全站显示一次，同意后永不再显示）
   ========================================================================== */
.gf-cookie-bar {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 9997;
    background: var(--gf-primary);
    color: var(--gf-gray-400);
    padding: 10px 20px;
    font-size: 13px;
    line-height: 1.5;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    box-shadow: 0 -2px 10px rgba(0,0,0,.2);
}
.gf-cookie-bar a { color: var(--gf-cta); text-decoration: underline; }
.gf-cookie-bar .gf-cookie-btn {
    cursor: pointer;
    border: none;
    padding: 6px 16px;
    border-radius: 3px;
    font-size: 13px;
    white-space: nowrap;
    font-weight: 600;
}
.gf-cookie-bar .gf-cookie-accept { background: var(--gf-cta); color: #fff; }
.gf-cookie-bar .gf-cookie-accept:hover { background: var(--gf-cta-hover); }
.gf-cookie-bar .gf-cookie-necessary { background: var(--gf-primary-hover); color: #fff; }
.gf-cookie-bar .gf-cookie-necessary:hover { background: var(--gf-gray-900); }
:root[data-theme="dark"] .gf-cookie-bar { background: var(--gf-gray-900); }
@media (max-width: 767px) {
    .gf-cookie-bar { font-size: 12px; padding: 8px 12px; }
}
@media print {
    .gf-cookie-bar { display: none !important; }
}
