﻿/* ============================================
   CSS模块化引入 - @import 必须放在文件开头
   ============================================ */

/* ---- 核心布局组件 ---- */
@import url("sidebar.css");          /* 侧边栏样式 */
@import url("layout.css");           /* 布局组件样式（筛选区域、主体容器） */
@import url("pagination.css");       /* 分页组件样式 */
@import url("breadcrumb.css");        /* 面包屑导航样式 */

/* ---- 列表页样式 ---- */
@import url("article-list.css");     /* 文章列表样式 */
@import url("video-list.css");       /* 视频列表样式 */
@import url("download-list.css");    /* 下载列表样式 */
@import url("team-list.css");       /* 团队列表样式 */
@import url("project-list.css");     /* 项目列表样式 */

/* ---- 详情页样式 ---- */
@import url("video-detail.css");     /* 视频详情样式 */
@import url("download-detail.css");  /* 下载详情样式 */
@import url("team-detail.css");     /* 团队详情样式 */
@import url("project-detail.css");   /* 项目详情样式 */
@import url("product-detail.css");  /* 产品详情样式 */
@import url("contact.css");         /* 联系我们样式 */

/* ---- 功能模块样式 ---- */
@import url("login.css");            /* 登录/注册表单样式 */

/* ---- 页面级样式 ---- */
@import url("home.css");            /* 首页样式 */
@import url("header.css");          /* 页头导航样式 */
@import url("footer.css");          /* 页脚样式 */
@import url("base.css");           /* 基础重置样式 */
@import url("product-list.css");    /* 产品列表样式 */
@import url("single-page.css");     /* 单页样式 */
/* ============================================
   全局样式开始 - global.css（完整合并优化版）
   ============================================ */
@charset "utf-8";

/* ============================================
   项目公共主题样式 - 颜色/阴影统一管理
   用途：引入所有页面作为基础样式，改主题仅需修改此文件变量值
   ============================================ */
:root {
  /* ============= 1. 主色调核心变量（核心修改区） ============= */
  --primary-color: #00a65a;          /* 主色纯色值（核心，改这个联动所有主色透明值） */
  --primary-light: rgba(0, 166, 90, 0.1);  /* 主色浅透明（阴影/弱背景） */
  --primary-medium: rgba(0, 166, 90, 0.15);/* 主色中透明（中等阴影/悬浮背景） */
  --primary-dark: rgba(0, 166, 90, 0.25);  /* 主色深透明（强阴影/强调背景） */
  --primary-xdark: rgba(0, 166, 90, 0.2);  /* 主色特深透明（超大阴影专用，统一变量无硬编码） */

  /* ============= 2. 强调色核心变量（核心修改区） ============= */
  --accent-color: #ff4757;           /* 强调色纯色值（危险色与强调色统一，一处修改两处生效） */
  --accent-light: rgba(255, 71, 87, 0.1);  /* 强调色浅透明 */
  --accent-medium: rgba(255, 71, 87, 0.15);/* 强调色中透明 */
  --accent-dark: rgba(255, 71, 87, 0.25);  /* 强调色深透明 */

  /* ============= 3. 功能色变量（按需修改） ============= */
  --success-color: #1dd1a1;          /* 成功色（独立值，按需调整） */
  --warning-color: #feca57;          /* 警告色（独立值，按需调整） */
  --info-color: #54a0ff;             /* 信息色（独立值，按需调整） */
  --danger-color: var(--accent-color);/* 危险色（复用强调色，统一管理，避免重复修改） */

  /* ============= 4. 主题化阴影系统（全变量复用，无需修改） ============= */
  --shadow-sm: 0 2px 8px var(--primary-light);    /* 小阴影（主色调） */
  --shadow-md: 0 5px 15px var(--primary-medium); /* 中阴影（主色调） */
  --shadow-lg: 0 10px 30px var(--primary-dark);  /* 大阴影（主色调） */
  --shadow-xl: 0 15px 40px var(--primary-xdark); /* 超大阴影（主色调，无硬编码） */
  --shadow-accent-sm: 0 2px 8px var(--accent-light);  /* 小阴影（强调色，用于警告/危险组件） */
  --shadow-accent-md: 0 5px 15px var(--accent-medium); /* 中阴影（强调色） */
  --shadow-accent-lg: 0 10px 30px var(--accent-dark);  /* 大阴影（强调色） */

  /* ============= 5. 中性色梯度（通用灰度，极少修改） ============= */
  --gray-50: #f8f9fa;
  --gray-100: #f1f2f6;
  --gray-200: #dfe4ea;
  --gray-300: #ced6e0;
  --gray-400: #a4b0be;
  --gray-500: #747d8c;
  --gray-600: #57606f;
  --gray-700: #2f3542;
  --gray-800: #1e272e;
  --gray-900: #0c2461;
}

/* 主题化阴影类 */
.shadow-primary-sm {
  box-shadow: var(--shadow-sm) !important;
}

.shadow-primary {
  box-shadow: var(--shadow-md) !important;
}

.shadow-primary-lg {
  box-shadow: var(--shadow-lg) !important;
}

.shadow-primary-xl {
  box-shadow: var(--shadow-xl) !important;
}

/* 覆盖Bootstrap默认阴影 */
.shadow-sm {
  box-shadow: var(--shadow-sm) !important;
}

.shadow {
  box-shadow: var(--shadow-md) !important;
}

.shadow-lg {
  box-shadow: var(--shadow-lg) !important;
}

/* 商品卡片专用阴影 */
.product-card-shadow {
  box-shadow: 0 3px 15px rgba(0, 166, 90, 0.08);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.product-card-shadow:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 35px rgba(0, 166, 90, 0.18);
}

/* 侧边栏专用阴影 */
.sidebar-shadow {
  box-shadow: 0 5px 20px rgba(0, 166, 90, 0.1);
  border-left: 3px solid var(--primary-color);
}

/* 内容区域专用阴影 */
.content-shadow {
  box-shadow: 0 6px 22px rgba(0, 166, 90, 0.12);
  border-top: 3px solid var(--primary-color);
}

/* 动态阴影效果 */
.hover-shadow-lift {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.hover-shadow-lift:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 35px rgba(0, 166, 90, 0.18) !important;
}

/* 面包屑区域阴影 */
.breadcrumb-shadow {
  box-shadow: 0 2px 10px rgba(0, 166, 90, 0.05);
}

/* 响应式阴影调整 */
@media (max-width: 768px) {
  .shadow-primary-lg,
  .shadow-lg {
    box-shadow: 0 5px 20px rgba(0, 166, 90, 0.15) !important;
  }
  
  .product-card-shadow:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0, 166, 90, 0.15);
  }
}

/* 暗色模式适配 */
@media (prefers-color-scheme: dark) {
  :root {
    --primary-color: #00a65a;
    --primary-light: rgba(0, 166, 90, 0.15);
    --primary-medium: rgba(0, 166, 90, 0.25);
    --primary-dark: rgba(0, 166, 90, 0.35);
  }
  
  .page-right,
  .filter-container,
  .single-products {
    background: #2c3e50;
  }
  
  .breadcrumb-shadow {
    background: #34495e;
    box-shadow: 0 2px 10px rgba(0, 166, 90, 0.1);
  }
}

/* 筛选按钮组响应式布局 */
@media (max-width: 576px) {
  .filter-container .btn-group {
    flex-direction: column;
    width: 100%;
  }
  
  .filter-container .btn-group .btn {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8px;
    justify-content: center;
  }
}

/* 图片懒加载优化 */
.lazyload,
.lazyloading {
  background: #f8f9fa;
  min-height: 200px;
}

.lazyloaded {
  animation: fadeIn 0.5s ease;
}

@keyframes fadeIn {
  from { opacity: 0.6; }
  to { opacity: 1; }
}

/* 分页响应式优化 */
@media (max-width: 768px) {
  .pagination {
    justify-content: center;
    flex-wrap: wrap;
    gap: 4px;
  }
  
  .pagination li a,
  .pagination li span {
    min-width: 32px;
    height: 32px;
    font-size: 13px;
    padding: 0 8px;
    margin: 2px;
  }
  
  .pages li.rows {
    font-size: 12px;
    line-height: 32px;
    margin-left: 10px;
  }
}

/* 基础重置 */
html {
    overflow-x: hidden;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    scroll-behavior: smooth;
}

html.safari .body {
    overflow-x: hidden;
}

body {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: #333;
    font-family: Arial, "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 链接样式 */
a {
    text-decoration: none;
    color: #333;
    transition: color 0.3s ease;
}

a:hover {
    color: #00a65a;
    text-decoration: none;
}

/* 列表重置 */
ul, li {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* 容器宽度设置 - 重要！你的自定义设置 */
@media (min-width: 1200px) {
    .container {
        max-width: 1600px !important; /* 你自定义的大屏幕宽度 */
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .container {
        max-width: 1140px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .container {
        max-width: 960px !important;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .container {
        max-width: 720px !important;
    }
}

/* 工具类 */
.cursor {
    cursor: pointer;
}

.btn.disabled {
    cursor: not-allowed;
}

.detail {
    overflow: hidden;
}

.detail img {
    max-width: 100%;
    height: auto;
}

.hidden {
    display: none;
}

.wrap {
    word-break: break-all;
    word-wrap: break-word;
}

/* 文本溢出 */
.ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.line-1 {
    -webkit-line-clamp: 1;
}

.line-2 {
    -webkit-line-clamp: 2;
}

.line-3 {
    -webkit-line-clamp: 3;
}

/* 按钮样式 */
.btn-color {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn-color:hover {
    color: #fff;
    background-color: #5a6268;
    border-color: #545b62;
}

/* 最大高度限制 */
.max-height-70 {
    max-height: 70px;
    overflow: hidden;
}

.max-height-100 {
    max-height: 100px;
    overflow: hidden;
}

/* 边框样式 */
.border-gray {
    border-color: #ccc !important;
}

.border-gray:hover {
    border-color: #dc3545 !important;
}

/* 输入框 */
.input {
    border-radius: 4px;
    font-size: 14px;
    line-height: 1.6;
    height: 40px;
    padding: 8px 12px;
    border: 1px solid #ccc;
    transition: border-color 0.3s ease;
}

.input:focus {
    border-color: #00a65a;
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(0, 166, 90, 0.25);
}

.input-sm {
    height: 36px !important;
    font-size: 13px;
    padding: 6px 10px;
}

/* 背景透明度 */
.bg-opacity {
    background: rgba(0, 0, 0, 0.6);
}

.choosebg {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 0;
    height: 0;
    border-bottom: 18px solid #dc3545;
    border-left: 18px solid transparent;
}

.choose {
    position: absolute;
    bottom: -1px;
    right: -1px;
    color: #fff;
    font-size: 12px;
}

/* 模态框 */
#modal_sm {
    z-index: 1100;
    top: 150px;
}

.datepicker {
    font-size: 0.85rem;
}

/* 规格选择 */
[data-prime].disabled {
    background: #f4f4f4;
    color: #444;
    border-color: #ddd;
    cursor: not-allowed;
    opacity: 0.65;
}

[data-prime].active {
    background: #00a65a;
    color: #fff;
    border-color: #00a65a;
}

[data-prime].active:after {
    content: "\f058";
    margin-left: 0.2rem;
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
}

/* 数量增减 */
.quantity {
    position: relative;
    width: 140px;
    height: 36px;
}

.quantity .minus,
.quantity .plus {
    background: transparent;
    color: #5e5e5e;
    position: absolute;
    border: 1px solid #ddd;
    height: 36px;
    width: 40px;
    outline: 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.quantity .minus {
    border-radius: 4px 0 0 4px;
    left: 0;
}

.quantity .plus {
    border-radius: 0 4px 4px 0;
    right: 0;
}

.quantity .minus:hover,
.quantity .plus:hover {
    background: #f8f9fa;
    border-color: #00a65a;
    color: #00a65a;
}

.quantity .qty {
    text-align: center;
    width: 100%;
    font-size: 14px;
    border-radius: 4px;
    height: 36px;
    outline: 0;
    border: 1px solid #ddd;
    padding: 0 45px;
    box-sizing: border-box;
}

/* 购物车 */
.mini-cart {
    display: flex;
    position: relative;
}

.mini-cart .mini-cart-content {
    position: absolute;
    width: 320px;
    top: 100%;
    right: 0;
    padding-top: 1.6rem;
    opacity: 0;
    visibility: hidden;
    z-index: 1050;
    transform: translate3d(0, 20px, 0);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
}

.mini-cart .mini-cart-content .inner-wrapper {
    position: relative;
    box-shadow: 0 10px 30px -8px rgba(0, 0, 0, 0.15);
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
}

.mini-cart .mini-cart-content .inner-wrapper:before {
    content: '';
    display: block;
    position: absolute;
    top: -10px;
    right: 30px;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fff;
}

.mini-cart .mini-cart-content .product-image {
    position: relative;
}

.mini-cart .mini-cart-content .product-image > a {
    position: absolute;
    top: -7px;
    right: -7px;
    width: 1.2rem;
    height: 1.2rem;
    text-align: center;
    vertical-align: middle;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    background: #fff;
    border-radius: 50%;
    color: #dc3545;
}

.mini-cart .mini-cart-content .mini-cart-total {
    padding: 15px;
    border-top: 1px solid #eee;
    background: #f9f9f9;
}

.mini-cart:hover .mini-cart-content {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
}

/* 购物车滚动条 */
.scrollbar {
    transition: all 0.3s ease;
}

.scrollbar .scroll {
    padding-left: .25rem;
    padding-right: .25rem;
    overflow-y: auto;
    max-height: 270px;
}

.scroll::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    border-radius: 5px;
    background-color: #F5F5F5;
}

.scroll::-webkit-scrollbar {
    width: 8px;
    height: 0;
}

.scroll::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background-color: #393939;
}

/* Bootstrap重置 */
.nav > li:hover .dropdown-menu {
    display: block;
}

h5, .h5 {
    font-size: 1.25rem;
    margin-bottom: 0.75rem;
}

.weui-dialog,
.modal-content {
    border: 4px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
}

.btn-danger {
    color: #fff;
    background-color: #ff500b;
    border-color: #ff500b;
}

.btn-rounded {
    border-radius: 50px;
}

h6, .h6 {
    font-size: 1rem;
}

.h7 {
    font-size: 0.875rem;
}

.form-control {
    font-size: 14px;
}

.btn-sm {
    font-size: 0.875rem;
    padding: 0.25rem 0.75rem;
}

.table-striped tbody tr:nth-of-type(odd) {
    background: #f8f9fa !important;
}

.table-hover tbody tr:hover {
    background: #f8f9fa !important;
}

.table td,
.table th {
    padding: 0.75rem;
    vertical-align: middle;
}

.btn {
    font-size: 14px;
}

.btn-sm {
    font-size: 12px;
}

.form-control-sm {
    padding: 1rem .5rem;
}

/* WeUI重置 */
.weui-dialog__title,
.weui-dialog__ft {
    font-size: 15px;
}

.weui-toast {
    width: auto !important;
    min-height: auto !important;
    padding: 1rem;
    border-radius: 8px;
}

.weui-mask,
.weui-mask_transparent {
    z-index: 1201 !important;
}

.weui-mask {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.weui-mask.weui-mask--visible {
    opacity: 1;
    visibility: visible;
}

.weui-dialog.weui-dialog--visible,
.weui-toast.weui-dialog--visible,
.weui-dialog.weui-toast--visible,
.weui-toast.weui-toast--visible {
    opacity: 1;
    visibility: visible;
}

.weui-dialog,
.weui-toast {
    visibility: hidden;
    margin: 0;
    top: 45%;
    z-index: 2000;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
}

.weui-dialog {
    max-width: 350px;
    background-clip: padding-box;
}

.modal-header {
    padding: 1rem;
    background: #f3f3f3;
    border-bottom: 1px solid #dee2e6;
    border-radius: 8px 8px 0 0;
}

.modal-header .close {
    padding: 0;
    margin: 0;
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

.modal-header .close:hover {
    opacity: 1;
}

.modal {
    top: 100px;
}

/* 主题样式 */
.page-right {
    padding: 25px 20px;
    border: 1px solid #eee;
    border-top: 3px solid #00a65a;
    border-radius: 8px;
    margin-bottom: 30px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.divider {
    border: 0;
    height: 1px;
    margin: 22.5px auto;
    background-image: linear-gradient(to right, transparent, #dbdbdb, transparent);
    text-align: center;
    position: relative;
    clear: both;
}

.divider .fa {
    text-align: center;
    background: #fff;
    border-radius: 50%;
    color: #a9a9a9;
    display: inline-block;
    height: 45px;
    line-height: 45px;
    position: absolute;
    width: 45px;
    font-size: 20px;
    margin: 0 auto;
    top: -22.5px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    border: 1px solid #eee;
}

.news .date {
    float: left;
    margin-right: 15px;
    text-align: center;
}

.news .date .month {
    background: #00a65a;
    color: white;
    border-radius: 0 0 4px 4px;
    font-size: 12px;
    padding: 4px 10px;
    text-transform: uppercase;
}

.news .date .day {
    background: #f8f9fa;
    display: block;
    font-size: 18px;
    font-weight: 600;
    padding: 10px;
    border-radius: 4px 4px 0 0;
    border: 1px solid #eee;
}

.news p {
    color: #6c757d;
    margin: 0 0 0.5rem 78px;
    line-height: 1.6;
}

.news article > hr {
    margin: 0 0 1rem 78px;
    border-color: #eee;
}

/* 首页样式 */
.big_title {
    font-size: 24px;
    color: #FF500B;
}

.sub_title {
    font-size: 24px;
    color: #666;
    line-height: 140%;
    text-transform: uppercase;
}

.index_txt {
    font-size: 14px;
    color: #000;
    line-height: 230%;
}

.img_border {
    border: 1px solid #eee!important;
}

.img_border:hover {
    border: 1px solid #FF500B!important;
}

.rem-13 {
    font-size: 1.3rem;
}

/* 备案图标 */
.beian {
    display: inline-block;
    width: 103px;
    height: 32px;
    margin: 0px 3px;
}

/* 折叠伸缩 */
aside h6 {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 1rem;
    color: #333;
}











/* 选项卡 */
.nav-tabs {
    border-bottom: 2px solid #dee2e6;
}

.nav-tabs li .nav-link {
    background: #f7f7f7;
    border: 1px solid #ddd;
    border-bottom: none;
    margin-right: 5px;
    border-radius: 4px 4px 0 0;
    padding: 10px 20px;
    color: #666;
    transition: all 0.3s ease;
}

.nav-tabs li.active .nav-link {
    background: #fff;
    border-color: #ddd;
    border-bottom-color: transparent;
    color: #00a65a;
    border-top: 3px solid #00a65a;
    margin-top: -2px;
}

.tab-content {
    border-radius: 0 0 4px 4px;
    box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.04);
    background-color: #fff;
    border: 1px solid #ddd;
    border-top: 0;
    padding: 20px;
}
/* 内容框 */
.featured-box {
    background: #fff;
    box-sizing: border-box;
    border-radius: 8px;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    margin-bottom: 30px;
    position: relative;
    text-align: center;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.featured-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}

.featured-box .box-content {
    border-radius: 8px;
    border-top: 3px solid #00a65a;
    padding: 25px;
    position: relative;
}

/* 评论 */
ul.comments {
    padding: 0;
}

ul.comments li {
    clear: both;
    padding: 20px 0 0 75px;
    position: relative;
    margin-bottom: 30px;
}

ul.comments li img.avatar {
    height: 50px;
    width: 50px;
    border-radius: 50%;
    object-fit: cover;
}

ul.comments li .img-thumbnail {
    margin-left: -75px;
    position: absolute;
    top: 20px;
    left: 0;
    border: 2px solid #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

ul.comments li .comment {
    margin-bottom: 15px;
}

ul.comments .comment-arrow {
    border-bottom: 12px solid transparent;
    border-right: 12px solid #f7f7f7;
    border-top: 12px solid transparent;
    height: 0;
    left: -12px;
    position: absolute;
    top: 25px;
    width: 0;
}

ul.comments .comment-block {
    background: #f7f7f7;
    border-radius: 8px;
    padding: 20px;
    position: relative;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

ul.comments .comment-block p {
    margin: 0 0 10px;
    line-height: 1.6;
}

ul.comments .comment-block p:last-child {
    margin-bottom: 0;
}

ul.comments .comment-block p > img {
    max-width: 100%;
    border-radius: 4px;
}

/* 展开伸缩 */
.toggle {
    margin: 0 0 20px;
    position: relative;
    clear: both;
}

.toggle > label {
    transition: all 0.3s ease;
    background: #f7f7f7;
    border-left: 4px solid #00a65a;
    border-radius: 6px;
    display: block;
    padding: 15px 20px 15px 15px;
    position: relative;
    cursor: pointer;
    font-weight: 500;
    color: #333;
}

.toggle > label:before {
    content: " ";
    position: absolute;
    top: calc(50% + 1px);
    right: 15px;
    border-color: #666;
    border-top: 2px solid;
    border-right: 2px solid;
    width: 10px;
    height: 10px;
    transform: rotate(45deg) translateY(-50%);
    transform-origin: center;
    transition: transform 0.3s ease;
}

.toggle > .toggle-content {
    display: none;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 0 0 6px 6px;
    border: 1px solid #eee;
    border-top: none;
}

.toggle > .toggle-content > p {
    margin-bottom: 0;
    line-height: 1.6;
}

.toggle.active > label {
    background: #f0f9f4;
    border-color: #00a65a;
    border-radius: 6px 6px 0 0;
}

.toggle.active > label:before {
    transform: rotate(135deg) translateY(-50%);
    top: calc(50% - 5px);
}

/* Banner */
.carousel-item {
    height: 500px;
    background-color: #777;
    overflow: hidden;
}

.carousel-item > img {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 768px) {
    .carousel-item {
        height: 300px;
    }
}
/* 在线客服 */
.chat-menu {
    position: fixed;
    right: 20px;
    bottom: 100px;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.chat-menu .kfbtn {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 20px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
}

.chat-menu .kfbtn:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
}

.chat-menu .btn-qq {
    background: linear-gradient(135deg, #247af0, #1b6bc1);
}

.chat-menu .btn-qq:hover {
    background: linear-gradient(135deg, #1b6bc1, #155a9c);
}

.chat-menu .btn-qq .qq {
    background: #1b6bc1;
    position: absolute;
    width: 160px;
    left: -175px;
    top: 0;
    padding: 15px;
    color: #fff;
    font-size: 0.9rem;
    text-align: center;
    display: none;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.chat-menu .btn-qq .qq:before {
    content: '';
    position: absolute;
    right: -8px;
    top: 20px;
    border-left: 8px solid #1b6bc1;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
}

.chat-menu .btn-qq .qq a {
    margin: 8px 0;
    display: block;
    color: #fff;
    font-weight: 500;
}

.chat-menu .btn-qq:hover .qq {
    display: block;
    animation: fadeIn 0.3s ease;
}

.chat-menu .btn-wx {
    background: linear-gradient(135deg, #42b41f, #379d17);
}

.chat-menu .btn-wx:hover {
    background: linear-gradient(135deg, #379d17, #2c7e12);
}

.chat-menu .btn-wx .pic {
    position: absolute;
    left: -162px;
    top: 0;
    display: none;
    width: 147px;
    height: 147px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    background: white;
    padding: 10px;
}

.chat-menu .btn-wx .pic:before {
    content: '';
    position: absolute;
    right: -8px;
    top: 20px;
    border-left: 8px solid white;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
}

.chat-menu .btn-wx:hover .pic {
    display: block;
    animation: fadeIn 0.3s ease;
}

.chat-menu .btn-phone {
    background: linear-gradient(135deg, #ff6600, #e55a00);
}

.chat-menu .btn-phone:hover {
    background: linear-gradient(135deg, #e55a00, #cc4e00);
}

.chat-menu .btn-phone .phone {
    background: #e55a00;
    position: absolute;
    width: 200px;
    left: -215px;
    top: 0;
    line-height: 56px;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 600;
    text-align: center;
    display: none;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.chat-menu .btn-phone .phone:before {
    content: '';
    position: absolute;
    right: -8px;
    top: 20px;
    border-left: 8px solid #e55a00;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
}

.chat-menu .btn-phone:hover .phone {
    display: block;
    animation: fadeIn 0.3s ease;
}

.chat-menu .btn-top {
    background: linear-gradient(135deg, #666, #444);
    display: none;
}

.chat-menu .btn-top:hover {
    background: linear-gradient(135deg, #444, #333);
}

.chat-float {
    position: absolute;
    top: 0;
    right: 56px;
    cursor: pointer;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateX(10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* 通用工具类 */
.head-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
}

.bottom-fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
}

.left-top-absolute {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 9999;
}

.right-top-absolute {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 9999;
}

.small-circle {
    width: 2.2rem;
    height: 2.2rem;
    line-height: 2.2rem;
}

.line-height-20 {
    line-height: 20px;
}

.line-height-230 {
    line-height: 230%;
}

.line-height-300 {
    line-height: 300%;
}

.w-15 {
    width: 15%;
}

.w-20 {
    width: 20%;
}

.w-25 {
    width: 25%;
}

.w-50 {
    width: 50%;
}

.py-75 {
    padding-top: .75rem;
    padding-bottom: .75rem;
}

/* 会员中心 */
.fa-badge {
    right: -7px;
    top: -5px;
    font-size: 12px;
}

/* 结算页面 */
.max-width-300 {
    max-width: 300px;
}

.checkout_li {
    float: left;
    position: relative;
    width: 120px;
    border: 1px solid #ccc;
    padding-top: .2rem;
    padding-bottom: .2rem;
    cursor: pointer;
}

/* 产品/鼠标移动到图片显示文字及按钮 */
.thumb-info {
    display: block;
    position: relative;
    text-decoration: none;
    max-width: 100%;
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.thumb-info:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.thumb-info .thumb-info-wrapper {
    border-radius: 8px;
    margin: 0;
    overflow: hidden;
    display: block;
    position: relative;
}

.thumb-info .thumb-info-wrapper:after {
    content: "";
    background: rgba(33, 37, 41, 0.8);
    transition: opacity 0.3s ease;
    border-radius: 8px;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: block;
    opacity: 0;
    z-index: 1;
}

.thumb-info .thumb-info-inner {
    transition: all 0.3s ease;
    display: block;
}

.thumb-info .thumb-info-title {
    transition: all 0.3s ease;
    background: rgba(33, 37, 41, 0.9);
    color: #fff;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 15px 20px;
    z-index: 2;
    font-size: 1rem;
    font-weight: 500;
}

.thumb-info img {
    transition: transform 0.6s ease;
    border-radius: 8px;
    position: relative;
    width: 100%;
    height: 240px;
    object-fit: cover;
}

.thumb-info:hover .thumb-info-wrapper:after {
    opacity: 1;
}

.thumb-info:hover img {
    transform: scale(1.1);
}

.thumb-info.thumb-info-centered-info .thumb-info-title {
    background: transparent;
    left: 5%;
    width: 90%;
    transition: opacity 0.3s ease, transform 0.3s ease;
    transform: translateY(30%);
    top: 50%;
    bottom: auto;
    opacity: 0;
    text-align: center;
    padding: 0;
    position: absolute;
}

.thumb-info.thumb-info-centered-info:hover .thumb-info-title {
    opacity: 1;
    transform: translateY(-50%);
}

/* 产品滚动效果 */
.owl-carousel {
    position: relative;
}

.owl-carousel .owl-nav {
    top: 50%;
    position: absolute;
    width: 100%;
    margin-top: 0;
    transform: translateY(-50%);
    pointer-events: none;
}

.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next {
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 40px;
    height: 40px;
    outline: 0;
    margin: 0;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid #ddd !important;
    border-radius: 50% !important;
    color: #333 !important;
    font-size: 18px;
    pointer-events: all;
    transition: all 0.3s ease;
}

.owl-carousel .owl-nav button.owl-prev:hover,
.owl-carousel .owl-nav button.owl-next:hover {
    background: #00a65a !important;
    border-color: #00a65a !important;
    color: white !important;
}

.owl-carousel .owl-nav button.owl-prev {
    left: 15px;
}

.owl-carousel .owl-nav button.owl-next {
    right: 15px;
}

.owl-carousel.show-nav-title .owl-nav {
    top: 0;
    right: 0;
    margin-top: -60px;
    width: auto;
}

.owl-carousel.show-nav-title .owl-nav button[class*="owl-"],
.owl-carousel.show-nav-title .owl-nav button[class*="owl-"]:hover,
.owl-carousel.show-nav-title .owl-nav button[class*="owl-"]:active {
    font-size: 24px;
    background: transparent !important;
    width: 40px;
    height: 40px;
    border: none !important;
}

.owl-carousel.show-nav-title .owl-nav button.owl-prev {
    left: -50px;
}

.owl-carousel.show-nav-title .owl-nav button.owl-next {
    right: -50px;
}

.owl-carousel.show-nav-title.show-nav-title-both-sides .owl-nav {
    width: 100%;
}

.owl-carousel.show-nav-title.show-nav-title-both-sides button.owl-prev {
    left: 0;
}

.owl-carousel.show-nav-title.show-nav-title-both-sides button.owl-next {
    right: 0;
}

/* 详情页 */
.owl-carousel.nav-dark:not(.nav-style-1):not(.show-nav-title) .owl-nav button[class*="owl-"] {
    background-color: rgba(0, 0, 0, 0.6) !important;
    border-color: transparent !important;
    color: #fff !important;
}

.owl-carousel .owl-item {
    max-height: 400px;
    overflow: hidden;
}

.owl-carousel .small {
    max-height: 50px;
    overflow: hidden;
}
/* ============================================
   全局样式结束
   ============================================ */

/* ============================================
   修复版头部导航样式- 开始---------------------------------------------------------------------------------------
   ============================================ */
/* 1. 整体头部容器 - 修复顶部空白 */
.header-effect-shrink {
    position: relative;
    z-index: 1000;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.header-body {
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

/* 2. 顶部信息栏样式 - 固定在顶部 */
.header-top-info {
    background: linear-gradient(135deg, #1a1a2e, #16213e) !important;
    padding: 8px 0 !important;
    color: #e6e6e6;
    border-bottom: none;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1040 !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    height: 35px !important;
    margin: 0 !important;
    width: 100vw !important;
    max-width: 100% !important;
}

.header-top-info .container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
    height: 100% !important;
    width: 100% !important;
}

.header-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 修复顶部空白：为主导航留出空间 */
body {
    padding-top: 105px !important; /* 35px(顶部栏) + 70px(主导航) */
}

/* 网站标语 */
.top-info-left .site-slogan {
    font-size: 13px !important;
    font-weight: 300 !important;
    color: #e6e6e6 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 快捷链接容器 */
.top-info-right {
    display: flex !important;
    margin: 0 !important;
    padding: 0 !important;
}

.quick-links {
    display: flex !important;
    align-items: center !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 10px !important;
}

.quick-links > li {
    position: relative !important;
    padding-left: 10px !important;
    margin: 0 !important;
}

.quick-links > li:not(:first-child):before {
    content: '|' !important;
    position: absolute !important;
    left: 0 !important;
    color: rgba(255, 255, 255, 0.3) !important;
    font-size: 12px !important;
}

/* 快捷链接样式 */
.quick-links li a {
    display: flex !important;
    align-items: center !important;
    color: #e6e6e6 !important;
    font-size: 13px !important;
    padding: 2px 5px !important;
    text-decoration: none !important;
    border-radius: 3px !important;
    transition: all 0.3s ease !important;
    gap: 5px !important;
    margin: 0 !important;
}

.quick-links li a:hover {
    color: #00d9a6 !important;
    background: rgba(255, 255, 255, 0.1) !important;
    transform: translateY(-1px) !important;
}

/* 下拉菜单样式 */
.quick-links .dropdown-menu {
    position: absolute !important;
    top: 100% !important;
    right: 0 !important;
    background: white !important;
    border-radius: 8px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    padding: 10px 0 !important;
    min-width: 150px !important;
    z-index: 1001 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(10px) !important;
    transition: all 0.3s ease !important;
    display: block !important;
}

.quick-links .dropdown:hover .dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

.quick-links .dropdown-menu .dropdown-item {
    display: flex !important;
    align-items: center !important;
    padding: 8px 15px !important;
    color: #555 !important;
    font-size: 13px !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    border-left: 3px solid transparent !important;
    margin: 0 !important;
}

.quick-links .dropdown-menu .dropdown-item:hover {
    background: linear-gradient(90deg, rgba(0, 166, 90, 0.1), transparent) !important;
    color: #00a65a !important;
    border-left-color: #00a65a !important;
    padding-left: 20px !important;
}

.quick-links .dropdown-menu .dropdown-item i {
    margin-right: 8px !important;
    width: 16px !important;
    text-align: center !important;
}

/* 微信下拉菜单图片 */
.quick-links .dropdown-menu img {
    padding: 10px !important;
    border-radius: 8px !important;
}

/* 3. 主导航栏样式 - 固定在顶部栏下面 */
.main-navigation {
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(10px) !important;
    position: fixed !important;
    top: 35px !important; /* 在顶部栏下面 */
    left: 0 !important;
    right: 0 !important;
    z-index: 1039 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1) !important;
    padding: 5px 0 !important;
    height: 70px !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
    margin: 0 !important;
    width: 100vw !important;
    max-width: 100% !important;
}

.main-navigation .container {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
    height: 100% !important;
    width: 100% !important;
}

/* Logo样式 */
.site-logo {
    flex-shrink: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.logo-link {
    display: block !important;
}

.logo-img {
    height: 50px !important;
    width: auto !important;
    transition: all 0.3s ease !important;
}

.logo-link:hover .logo-img {
    transform: scale(1.05) !important;
}

/* 主菜单容器 */
.main-menu-container {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 1 !important;
    justify-content: center !important;
}

/* 一级菜单 */
.main-menu {
    display: flex !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 2px !important;
    height: 100% !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 100% !important;
    overflow: visible !important;
}

.main-menu > li {
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.main-menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    padding: 12px 20px !important;
    color: #2c3e50 !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    overflow: hidden !important;
    text-decoration: none !important;
    height: 100% !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

/* 为有下级菜单的项添加箭头图标 */
.main-menu > li.dropdown > a:after,
.main-menu > li.mega-menu > a:after {
    content: "\f078" !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    margin-left: 8px !important;
    font-size: 12px !important;
    transition: transform 0.3s ease !important;
    display: inline-block !important;
}

.main-menu > li.dropdown:hover > a:after,
.main-menu > li.mega-menu:hover > a:after {
    transform: rotate(180deg) !important;
}

/* 一级菜单悬停效果 */
.main-menu > li > a:hover,
.main-menu > li.open > a,
.main-menu > li:hover > a {
    background: linear-gradient(135deg, rgba(0, 166, 90, 0.1), rgba(93, 202, 136, 0.1)) !important;
    color: #00a65a !important;
    transform: translateY(-1px) !important;
}

/* 下划线动画 */
.main-menu > li > a::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 50% !important;
    width: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg, #00a65a, #5dca88) !important;
    transition: all 0.3s ease !important;
    transform: translateX(-50%) !important;
    border-radius: 3px !important;
}

.main-menu > li:hover > a::after,
.main-menu > li.open > a::after {
    width: 70% !important;
}

/* 4. 修复二级菜单 */
.main-menu > li.dropdown .dropdown-menu,
.main-menu > li.mega-menu .dropdown-menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    margin-top: 5px !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 15px 0 !important;
    min-width: 220px !important;
    box-shadow: 0 15px 50px rgba(0,0,0,0.12) !important;
    border: 1px solid rgba(0,0,0,0.05) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(10px) !important;
    transition: all 0.3s ease !important;
    display: block !important;
    z-index: 1001 !important;
    white-space: nowrap !important;
    min-width: fit-content !important;
}

.main-menu > li.dropdown:hover .dropdown-menu,
.main-menu > li.mega-menu:hover .dropdown-menu,
.main-menu > li.dropdown.open .dropdown-menu,
.main-menu > li.mega-menu.open .dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

/* 二级菜单项 */
.dropdown-menu li {
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
}

.dropdown-menu li a {
    padding: 10px 25px !important;
    color: #555 !important;
    font-size: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    transition: all 0.3s ease !important;
    border-left: 3px solid transparent !important;
    border-bottom: none !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    position: relative !important;
}

.dropdown-menu li a:hover {
    background: linear-gradient(90deg, rgba(0, 166, 90, 0.08), transparent) !important;
    color: #00a65a !important;
    border-left-color: #00a65a !important;
    padding-left: 30px !important;
}

/* 5. 修复三级菜单 */
.dropdown-submenu {
    position: relative !important;
}

.dropdown-submenu > .dropdown-menu {
    position: absolute !important;
    left: 100% !important;
    top: -15px !important;
    margin-left: 5px !important;
    border-radius: 12px !important;
    min-width: 200px !important;
    box-shadow: 0 15px 50px rgba(0,0,0,0.12) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateX(-10px) !important;
    transition: all 0.3s ease !important;
    display: block !important;
    z-index: 1002 !important;
}

.dropdown-submenu:hover > .dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateX(0) !important;
    display: block !important;
}

/* 三级菜单箭头 */
.dropdown-menu li.dropdown-submenu > a:after {
    font-family: 'Font Awesome 5 Free' !important;
    content: "\f054" !important;
    font-weight: 900 !important;
    position: absolute !important;
    top: 50% !important;
    font-size: 12px !important;
    opacity: 0.5 !important;
    right: 20px !important;
    transform: translateY(-50%) !important;
    transition: all 0.3s ease !important;
}

.dropdown-menu li.dropdown-submenu:hover > a:after {
    opacity: 1 !important;
    right: 15px !important;
    color: #00a65a !important;
}

/* 6. 修复大菜单（产品分类）- 重要修复 */
.mega-menu > .dropdown-menu {
    width: 1200px !important;
    padding: 25px !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 60px rgba(0,0,0,0.15) !important;
    left: 0 !important; /* 改为相对于父元素定位 */
    transform: translateX(0) translateY(10px) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all 0.3s ease !important;
    z-index: 1003 !important;
    max-width: 100vw !important; /* 确保不超出屏幕 */
    min-width: 800px !important;
}

.mega-menu:hover > .dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateX(0) translateY(0) !important;
}

/* 修复大菜单位置 - 关键修复 */
@media (min-width: 992px) {
    .mega-menu {
        position: static !important; /* 关键：让父级相对定位基于整个导航栏 */
    }
    
    .mega-menu > .dropdown-menu {
        left: 50% !important;
        transform: translateX(-50%) translateY(10px) !important;
        min-width: 900px !important;
        max-width: 1200px !important;
    }
    
    .mega-menu:hover > .dropdown-menu {
        transform: translateX(-50%) translateY(0) !important;
    }
}

/* 响应式调整大菜单位置 */
@media (max-width: 1399px) {
    .mega-menu > .dropdown-menu {
        min-width: 1100px !important;
        max-width: 1100px !important;
    }
    
    @media (min-width: 992px) {
        .mega-menu > .dropdown-menu {
            min-width: 1000px !important;
            max-width: 1100px !important;
        }
    }
}

@media (max-width: 1199px) {
    .mega-menu > .dropdown-menu {
        min-width: 900px !important;
        max-width: 1000px !important;
    }
    
    @media (min-width: 992px) {
        .mega-menu > .dropdown-menu {
            min-width: 900px !important;
            max-width: 1000px !important;
        }
    }
}

/* 在小屏幕上调整大菜单位置 */
@media (max-width: 991px) {
    .mega-menu > .dropdown-menu {
        left: 0 !important;
        transform: translateX(0) !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 100% !important;
        position: absolute !important;
    }
}

.mega-menu-columns {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 25px !important;
    width: 100% !important;
    overflow: visible !important;
    padding: 5px !important;
}

.mega-menu-col {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    overflow: visible !important;
    text-align: left !important;
}

.mega-menu-title {
    display: block !important;
    color: #2c3e50 !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    padding-bottom: 12px !important;
    margin-bottom: 15px !important;
    border-bottom: 2px solid #00a65a !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-width: 0 !important;
}

.mega-menu-title:hover {
    color: #00a65a !important;
}

/* 产品列表 */
.mega-menu-col ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
}

.mega-menu-col ul > li > a {
    display: flex !important;
    align-items: center !important;
    padding: 8px 12px !important;
    color: #666 !important;
    text-decoration: none !important;
    border-radius: 6px !important;
    transition: all 0.3s ease !important;
    background: rgba(0,0,0,0.02) !important;
    margin-bottom: 5px !important;
    border: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    justify-content: flex-start !important;
    text-align: left !important;
    min-width: 0 !important;
}

.mega-menu-col ul > li > a:hover {
    background: linear-gradient(90deg, rgba(0, 166, 90, 0.1), rgba(0, 166, 90, 0.05)) !important;
    color: #00a65a !important;
    transform: translateX(5px) !important;
    padding-left: 20px !important;
}

.mega-menu-col ul > li > a img {
    width: 30px !important;
    height: 30px !important;
    border-radius: 6px !important;
    margin-right: 10px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
    max-width: 100% !important;
    height: auto !important;
}

/* 7. 移动端菜单按钮 */
.mobile-menu-toggle {
    background: linear-gradient(135deg, #00a65a, #5dca88) !important;
    color: white !important;
    border: none !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 10px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 4px 15px rgba(0, 166, 90, 0.3) !important;
    margin: 0 !important;
    padding: 0 !important;
    position: absolute !important;
    right: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 1041 !important;
}

.mobile-menu-toggle:hover {
    background: linear-gradient(135deg, #008d4c, #4bb877) !important;
    transform: translateY(-50%) scale(1.05) !important;
}

/* 8. 移动端菜单容器 */
.mobile-menu-container {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(10px) !important;
    z-index: 9999 !important;
    padding: 60px 0 0 0 !important;
    overflow-y: auto !important;
    transform: translateX(-100%) !important;
    transition: transform 0.4s ease !important;
    display: none !important;
    width: 100vw !important;
    max-width: 100% !important;
}

.mobile-menu-container.show {
    transform: translateX(0) !important;
    display: block !important;
}

/* 移动端关闭按钮 */
.mobile-close-btn {
    position: fixed !important;
    top: 10px !important;
    right: 10px !important;
    width: 40px !important;
    height: 40px !important;
    background: #00a65a !important;
    color: white !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    box-shadow: 0 4px 15px rgba(0, 166, 90, 0.3) !important;
    border: none !important;
    z-index: 10000 !important;
}

/* 移动端菜单样式 */
.mobile-nav {
    list-style: none !important;
    padding: 10px 15px 20px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.mobile-nav > li {
    border-bottom: 1px solid rgba(0,0,0,0.05) !important;
    position: relative !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.mobile-nav > li > a {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 12px 0 !important;
    color: #2c3e50 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* 移动端下拉菜单 */
.mobile-nav .dropdown-menu {
    position: static !important;
    box-shadow: none !important;
    background: rgba(0,0,0,0.02) !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s ease !important;
    padding: 0 !important;
    margin: 0 0 0 10px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    display: block !important;
    list-style: none !important;
    width: calc(100% - 20px) !important;
}

.mobile-nav > li.open > .dropdown-menu {
    max-height: 2000px !important;
    padding: 10px 0 10px 10px !important;
    margin: 0 0 0 10px !important;
    width: calc(100% - 20px) !important;
}

/* 移动端三级菜单 */
.mobile-nav .dropdown-submenu > .dropdown-menu {
    position: static !important;
    margin-left: 10px !important;
    margin-top: 0 !important;
    max-height: 0 !important;
    width: calc(100% - 20px) !important;
    border-left: 2px solid rgba(0, 166, 90, 0.1) !important;
}

.mobile-nav .dropdown-submenu.open > .dropdown-menu {
    max-height: 1000px !important;
    padding: 5px 0 5px 10px !important;
    margin-left: 10px !important;
    width: calc(100% - 20px) !important;
}

/* 移动端大菜单 - 修复5个分类的显示 */
.mobile-nav .mega-menu-columns {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 15px !important;
    padding: 10px !important;
    margin: 5px 0 !important;
    width: 100% !important;
    position: relative !important;
    transform: none !important;
}

.mobile-nav .mega-menu-col {
    background: rgba(0, 166, 90, 0.03) !important;
    border-radius: 10px !important;
    padding: 15px !important;
    margin: 0 !important;
    border: 1px solid rgba(0, 166, 90, 0.1) !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
    transform: none !important;
}

.mobile-nav .mega-menu-title {
    color: #2c3e50 !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    padding-bottom: 10px !important;
    margin-bottom: 10px !important;
    border-bottom: 2px solid #00a65a !important;
    text-decoration: none !important;
    display: block !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}

/* 移动端产品列表 */
.mobile-nav .mega-menu-col ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mobile-nav .mega-menu-col ul li {
    margin-bottom: 6px !important;
}

.mobile-nav .mega-menu-col ul li a {
    display: flex !important;
    align-items: center !important;
    padding: 8px 10px !important;
    color: #555 !important;
    text-decoration: none !important;
    border-radius: 6px !important;
    transition: all 0.3s ease !important;
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    font-size: 13px !important;
    white-space: normal !important;
    word-break: break-word !important;
    line-height: 1.4 !important;
}

.mobile-nav .mega-menu-col ul li a:hover {
    background: linear-gradient(90deg, rgba(0, 166, 90, 0.1), rgba(0, 166, 90, 0.05)) !important;
    color: #00a65a !important;
    border-color: rgba(0, 166, 90, 0.2) !important;
}

.mobile-nav .mega-menu-col ul li a img {
    width: 24px !important;
    height: 24px !important;
    border-radius: 4px !important;
    margin-right: 8px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
}

/* 移动端大菜单展开动画 */
.mobile-nav > li.mega-menu .dropdown-menu {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.5s ease !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.mobile-nav > li.mega-menu.open .dropdown-menu {
    max-height: 5000px !important;
    padding: 10px 0 !important;
    margin: 0 !important;
}

/* 移动端菜单箭头图标 */
.mobile-nav > li.dropdown > a:after,
.mobile-nav > li.mega-menu > a:after {
    content: "\f078" !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    transition: transform 0.3s ease !important;
}

.mobile-nav > li.dropdown.open > a:after,
.mobile-nav > li.mega-menu.open > a:after {
    transform: rotate(180deg) !important;
}

.mobile-nav .dropdown-submenu > a:after {
    content: "\f078" !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    transition: transform 0.3s ease !important;
}

.mobile-nav .dropdown-submenu.open > a:after {
    transform: rotate(180deg) !important;
}

/* 9. 滚动固定效果 */
#header.fixed {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1040 !important;
    animation: slideDown 0.3s ease !important;
    width: 100vw !important;
    max-width: 100% !important;
}

#header.fixed .header-top-info {
    display: none !important;
}

#header.fixed .main-navigation {
    top: 0 !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15) !important;
}

@keyframes slideDown {
    from {
        transform: translateY(-100%) !important;
        opacity: 0 !important;
    }
    to {
        transform: translateY(0) !important;
        opacity: 1 !important;
    }
}

/* 10. 响应式设计 - 修复小屏幕下的显示问题 */
@media (max-width: 1399px) {
    .mega-menu > .dropdown-menu {
        width: 1100px !important;
    }
    
    .mega-menu-columns {
        grid-template-columns: repeat(5, 1fr) !important;
        gap: 20px !important;
    }
}

@media (max-width: 1199px) {
    .mega-menu > .dropdown-menu {
        width: 1000px !important;
    }
    
    .mega-menu-columns {
        grid-template-columns: repeat(5, 1fr) !important;
    }
    
    .main-menu > li > a {
        padding: 12px 15px !important;
        font-size: 14px !important;
    }
}

@media (max-width: 991px) {
    /* 移动端隐藏PC菜单，显示汉堡按钮 */
    .main-menu {
        display: none !important;
    }
    
    .mobile-menu-toggle {
        display: flex !important;
    }
    
    .main-menu-container {
        justify-content: flex-end !important;
    }
    
    /* 调整Logo位置 */
    .site-logo {
        position: absolute !important;
        left: 15px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        z-index: 1040 !important;
    }
    
    /* 调整顶部栏 */
    .header-row {
        flex-direction: row !important;
        justify-content: space-between !important;
    }
    
    .top-info-left {
        display: none !important;
    }
    
    .top-info-right {
        width: auto !important;
    }
    
    /* 移动端调整大菜单 */
    .mobile-nav .mega-menu-columns {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px !important;
    }
    
    /* 修复移动端body padding */
    body {
        padding-top: 70px !important; /* 只保留主导航的高度 */
    }
    
    /* 顶部信息栏在移动端隐藏 */
    .header-top-info {
        display: none !important;
    }
    
    /* 主导航在移动端设为fixed到顶部 */
    .main-navigation {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        height: 60px !important;
        z-index: 1040 !important;
        background: white !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1) !important;
    }
    
    .main-navigation .container {
        padding: 0 15px !important;
    }
    
    .logo-img {
        height: 35px !important;
    }
    
    /* 在移动端隐藏大菜单 */
    .mega-menu > .dropdown-menu {
        display: none !important;
    }
}

@media (max-width: 768px) {
    body {
        padding-top: 60px !important;
    }
    
    .header-top-info {
        display: none !important;
    }
    
    .main-navigation {
        height: 60px !important;
    }
    
    .logo-img {
        height: 30px !important;
    }
    
    /* 移动端隐藏部分文字 */
    .quick-links li a span:not(.fa) {
        display: none !important;
    }
    
    .quick-links li a {
        padding: 5px 8px !important;
    }
    
    .quick-links > li:not(:first-child):before {
        content: '' !important;
    }
    
    /* 移动端大菜单单列显示 */
    .mobile-nav .mega-menu-columns {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        padding: 10px 5px !important;
    }
    
    .mobile-nav .mega-menu-col {
        padding: 12px !important;
    }
    
    .mobile-nav .mega-menu-title {
        font-size: 14px !important;
        padding-bottom: 8px !important;
        margin-bottom: 8px !important;
    }
    
    .mobile-nav .mega-menu-col ul li a {
        padding: 6px 8px !important;
        font-size: 12px !important;
    }
    
    /* 小屏幕调整 */
    .mobile-menu-container {
        padding: 50px 0 0 0 !important;
    }
    
    .mobile-menu-toggle {
        width: 40px !important;
        height: 40px !important;
        right: 10px !important;
    }
    
    .site-logo {
        left: 10px !important;
    }
    
    .mobile-close-btn {
        top: 8px !important;
        right: 8px !important;
        width: 35px !important;
        height: 35px !important;
    }
    
    .mobile-nav {
        padding: 5px 10px 15px !important;
    }
    
    .mobile-nav > li > a {
        padding: 10px 0 !important;
        font-size: 15px !important;
    }
}

@media (max-width: 576px) {
    body {
        padding-top: 60px !important;
    }
    
    .main-navigation {
        height: 50px !important;
    }
    
    .logo-img {
        height: 25px !important;
    }
    
    .mobile-menu-toggle {
        width: 36px !important;
        height: 36px !important;
        right: 8px !important;
    }
    
    .mobile-close-btn {
        width: 30px !important;
        height: 30px !important;
        top: 5px !important;
        right: 5px !important;
    }
    
    .mobile-nav {
        padding: 5px 8px 10px !important;
    }
    
    .mobile-nav > li > a {
        padding: 8px 0 !important;
        font-size: 14px !important;
    }
    
    .mobile-nav .mega-menu-col {
        padding: 10px !important;
    }
    
    .mobile-nav .mega-menu-col ul li a {
        padding: 5px 6px !important;
        font-size: 11px !important;
    }
}

/* 平板上的布局 */
@media (min-width: 768px) and (max-width: 991px) {
    .mobile-nav .mega-menu-columns {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px !important;
        padding: 15px !important;
    }
}

/* 商品菜单响应式布局 */
@media (max-width: 1199px) and (min-width: 992px) {
    .mega-menu-columns {
        grid-template-columns: repeat(5, 1fr) !important;
    }
    
    .mega-menu > .dropdown-menu {
        min-width: 900px !important;
        max-width: 1000px !important;
    }
}

@media (max-width: 1399px) and (min-width: 1200px) {
    .mega-menu > .dropdown-menu {
        width: 1100px !important;
    }
    
    .mega-menu-columns {
        grid-template-columns: repeat(5, 1fr) !important;
    }
}

@media (min-width: 1200px) {
    .header-top-info .container,
    .main-navigation .container {
        max-width: 1200px !important;
        margin: 0 auto !important;
    }
    
    .mega-menu > .dropdown-menu {
        width: 1200px !important;
        left: 50% !important;
        transform: translateX(-50%) translateY(10px) !important;
    }
    
    .mega-menu:hover > .dropdown-menu {
        transform: translateX(-50%) translateY(0) !important;
    }
    
    .mega-menu-columns {
        grid-template-columns: repeat(5, 1fr) !important;
    }
}

@media (min-width: 1400px) {
    .header-top-info .container,
    .main-navigation .container {
        max-width: 1400px !important;
    }
    
    .mega-menu > .dropdown-menu {
        max-width: 1400px !important;
    }
}

@media (min-width: 992px) {
    .mega-menu > .dropdown-menu {
        min-width: 900px !important;
        max-width: 1200px !important;
    }
}

/* 11. 全局样式 */
* {
    box-sizing: border-box !important;
}

html, body {
    overflow-x: hidden !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body {
    scrollbar-width: thin !important;
    scrollbar-color: #00a65a rgba(0,0,0,0.05) !important;
}

body::-webkit-scrollbar {
    width: 8px !important;
}

body::-webkit-scrollbar-track {
    background: rgba(0,0,0,0.05) !important;
}

body::-webkit-scrollbar-thumb {
    background-color: #00a65a !important;
    border-radius: 4px !important;
}

/* 滚动条样式 */
.mobile-menu-container {
    scrollbar-width: thin !important;
    scrollbar-color: rgba(0, 166, 90, 0.5) transparent !important;
}

.mobile-menu-container::-webkit-scrollbar {
    width: 6px !important;
}

.mobile-menu-container::-webkit-scrollbar-track {
    background: transparent !important;
}

.mobile-menu-container::-webkit-scrollbar-thumb {
    background-color: rgba(0, 166, 90, 0.5) !important;
    border-radius: 3px !important;
}

/* 12. 确保所有元素不超出屏幕 */
.mobile-nav *,
.mega-menu-columns * {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* 13. 确保层级正确 */
.dropdown-menu {
    z-index: 1001 !important;
}

.dropdown-submenu > .dropdown-menu {
    z-index: 1002 !important;
}

.mega-menu .dropdown-menu {
    z-index: 1003 !important;
}

.mobile-menu-container {
    z-index: 9999 !important;
}

/* 14. 确保所有修复生效 */
.mobile-nav .mega-menu-columns,
.mobile-nav .mega-menu-col,
.mobile-nav .dropdown-menu {
    transform: none !important;
    left: 0 !important;
    right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* 15. 修复Logo在移动端的显示 */
@media (max-width: 991px) {
    .site-logo {
        position: absolute !important;
        left: 15px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        z-index: 1041 !important;
    }
    
    .logo-link {
        display: block !important;
    }
    
    .logo-img {
        max-height: 35px !important;
        width: auto !important;
    }
}
@media (max-width: 991px) {
    .mega-menu > .dropdown-menu {
        display: block !important;
        position: static !important;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: auto !important;
        box-shadow: none !important;
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        margin: 0 !important;
        left: 0 !important;
        right: 0 !important;
    }
    
    /* 确保在PC端隐藏，移动端显示正确的菜单 */
    .main-menu .mega-menu > .dropdown-menu {
        display: none !important; /* PC端隐藏 */
    }
    
    .mobile-nav .mega-menu > .dropdown-menu {
        display: block !important; /* 移动端显示 */
    }
}
/* 特别修复：在992px-1199px之间的响应式布局 */
@media (min-width: 992px) and (max-width: 1199px) {
    .mega-menu > .dropdown-menu {
        min-width: 900px !important;
        max-width: 1000px !important;
        left: 50% !important;
        transform: translateX(-50%) translateY(10px) !important;
    }
    
    .mega-menu:hover > .dropdown-menu {
        transform: translateX(-50%) translateY(0) !important;
    }
    
    /* 当菜单超出屏幕时，调整位置 */
    @media (max-width: 999px) {
        .mega-menu > .dropdown-menu {
            left: 10px !important;
            right: 10px !important;
            transform: translateX(0) translateY(10px) !important;
            width: calc(100vw - 20px) !important;
            min-width: auto !important;
            max-width: calc(100vw - 20px) !important;
        }
        
        .mega-menu:hover > .dropdown-menu {
            transform: translateX(0) translateY(0) !important;
        }
        
        .mega-menu-columns {
            grid-template-columns: repeat(3, 1fr) !important;
        }
    }
}

/* 修复小屏幕下大菜单的显示 */
@media (max-width: 991px) {
    .mega-menu > .dropdown-menu {
        display: none !important;
    }
}

    
/* ============================================
   底部样式 - 开始
   ============================================ */
/* 底部 */
#footer {
    background: #1a1a1a;
    border-top: 4px solid #00a65a;
    color: #aaa;
    margin-top: 80px;
    padding: 60px 0 0;
    position: relative;
}

#footer h4 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    color: #fff;
    position: relative;
    padding-bottom: 10px;
}

#footer h4:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 2px;
    background: #00a65a;
}

#footer a {
    color: #aaa;
    transition: color 0.3s ease;
}

#footer a:hover {
    color: #00a65a;
    text-decoration: none;
}

#footer ul {
    padding: 0;
}

#footer .footer-copyright {
    background: #0d0d0d;
    border-top: 1px solid #333;
    margin-top: 40px;
    padding: 20px 0;
    color: #777;
    font-size: 0.9rem;
}




/* ============================================
   移动端底部导航优化 - 基于现有结构
   ============================================ */

/* 原有结构保留，添加APP风格优化 */
.w-100.d-block.d-sm-none.fixed-bottom.bg-light.border-top.py-2.text-center {
    padding: 10px 0 12px !important; /* 增加底部内边距，适配安全区域 */
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-top: 1px solid rgba(0, 0, 0, 0.1) !important;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
    z-index: 998;
    transition: transform 0.3s ease;
}

/* 底部安全区域适配（iPhone X及以上） */
@supports (padding-bottom: env(safe-area-inset-bottom)) {
    .w-100.d-block.d-sm-none.fixed-bottom.bg-light.border-top.py-2.text-center {
        padding-bottom: calc(12px + env(safe-area-inset-bottom)) !important;
    }
    
    /* 为安全区域添加渐变遮罩 */
    .w-100.d-block.d-sm-none.fixed-bottom.bg-light.border-top.py-2.text-center::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: env(safe-area-inset-bottom);
        background: linear-gradient(to top, rgba(255,255,255,0.9), transparent);
        pointer-events: none;
    }
}

/* 导航项容器优化 */
.w-100.d-block.d-sm-none.fixed-bottom .row {
    margin: 0 -8px;
}

/* 单个导航项优化 */
.w-100.d-block.d-sm-none.fixed-bottom .col-3 {
    padding: 0 8px;
}

.w-100.d-block.d-sm-none.fixed-bottom .col-3 a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #666;
    padding: 8px 0;
    border-radius: 10px;
    transition: all 0.2s ease;
    position: relative;
    min-height: 56px;
}

/* 图标区域优化 */
.w-100.d-block.d-sm-none.fixed-bottom .col-3 a .w-100:first-child {
    margin-bottom: 6px;
    font-size: 22px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.2s ease;
}

/* 文本区域优化 */
.w-100.d-block.d-sm-none.fixed-bottom .col-3 a .w-100:last-child {
    font-size: 11px;
    font-weight: 500;
    line-height: 1.2;
    white-space: nowrap;
}

/* 活动状态效果 */
.w-100.d-block.d-sm-none.fixed-bottom .col-3 a.active {
    color: #00a65a !important;
    background: rgba(0, 166, 90, 0.08) !important;
}

.w-100.d-block.d-sm-none.fixed-bottom .col-3 a.active .w-100:first-child {
    transform: translateY(-2px);
}

/* 添加活动指示器（小圆点） */
.w-100.d-block.d-sm-none.fixed-bottom .col-3 a.active::after {
    content: '';
    position: absolute;
    top: 6px;
    right: 8px;
    width: 6px;
    height: 6px;
    background: #00a65a;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.95);
}

/* 点击反馈效果 */
.w-100.d-block.d-sm-none.fixed-bottom .col-3 a:active {
    background: rgba(0, 166, 90, 0.12) !important;
    transform: scale(0.96);
}

/* 购物车角标样式 */
.mobile-cart-badge {
    position: absolute;
    top: 4px;
    right: 4px;
    background: #ff500b;
    color: white;
    font-size: 10px;
    min-width: 16px;
    height: 16px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    border: 2px solid rgba(255, 255, 255, 0.95);
    font-weight: 600;
    z-index: 1;
}

/* 消息提醒小红点 */
.mobile-notification-dot {
    position: absolute;
    top: 6px;
    right: 10px;
    width: 8px;
    height: 8px;
    background: #ff4757;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.95);
}

/* 搜索框特殊样式（如果导航中有搜索） */
.mobile-search-input {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 50px;
    padding: 8px 15px;
    font-size: 14px;
    width: 90%;
    margin: 0 auto;
}

/* 暗色模式适配 */
@media (prefers-color-scheme: dark) {
    .w-100.d-block.d-sm-none.fixed-bottom.bg-light.border-top.py-2.text-center {
        background: rgba(30, 30, 30, 0.95) !important;
        border-top-color: rgba(255, 255, 255, 0.1) !important;
        box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.3);
    }
    
    .w-100.d-block.d-sm-none.fixed-bottom .col-3 a {
        color: #aaa;
    }
    
    .w-100.d-block.d-sm-none.fixed-bottom .col-3 a.active {
        color: #00d9a6 !important;
        background: rgba(0, 217, 166, 0.15) !important;
    }
    
    .w-100.d-block.d-sm-none.fixed-bottom .col-3 a.active::after {
        background: #00d9a6;
        border-color: rgba(30, 30, 30, 0.95);
    }
    
    .mobile-cart-badge {
        border-color: rgba(30, 30, 30, 0.95);
    }
    
    .mobile-notification-dot {
        border-color: rgba(30, 30, 30, 0.95);
    }
    
    .mobile-search-input {
        background: #2a2a2a;
        border-color: #444;
        color: #eee;
    }
}

/* 滚动时隐藏/显示效果 */
.mobile-nav-hidden {
    transform: translateY(100%) !important;
}

.mobile-nav-visible {
    transform: translateY(0) !important;
}

/* 入场动画 */
@keyframes slideUpFromBottom {
    from {
        transform: translateY(100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.w-100.d-block.d-sm-none.fixed-bottom.bg-light.border-top.py-2.text-center {
    animation: slideUpFromBottom 0.3s ease-out;
}

/* 响应式调整 */
@media (max-width: 375px) {
    .w-100.d-block.d-sm-none.fixed-bottom .col-3 a .w-100:first-child {
        font-size: 20px;
    }
    
    .w-100.d-block.d-sm-none.fixed-bottom .col-3 a .w-100:last-child {
        font-size: 10px;
    }
    
    .w-100.d-block.d-sm-none.fixed-bottom .col-3 a {
        padding: 6px 0;
        min-height: 50px;
    }
}

/* 横屏适配 */
@media (max-width: 767px) and (orientation: landscape) {
    .w-100.d-block.d-sm-none.fixed-bottom.bg-light.border-top.py-2.text-center {
        height: 50px;
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }
    
    .w-100.d-block.d-sm-none.fixed-bottom .row {
        flex-direction: row !important;
    }
    
    .w-100.d-block.d-sm-none.fixed-bottom .col-3 a {
        flex-direction: row;
        min-height: auto;
        padding: 0 12px;
    }
    
    .w-100.d-block.d-sm-none.fixed-bottom .col-3 a .w-100:first-child {
        margin-bottom: 0;
        margin-right: 8px;
        font-size: 18px;
    }
    
    .w-100.d-block.d-sm-none.fixed-bottom .col-3 a .w-100:last-child {
        font-size: 13px;
    }
}
/* ========== 新增：首次登录引导提示弹窗样式 ========== */
.login-guide-modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  border-radius: 16px;
  width: 80%;
  max-width: 300px;
  padding: 25px 20px;
  text-align: center;
  box-shadow: 0 5px 20px rgba(0,0,0,0.2);
  z-index: 1001; /* 层级高于客服弹窗 */
  display: none;
}

.login-guide-mask {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,0.5);
  z-index: 1000;
  display: none;
}

.login-guide-title {
  font-size: 18px;
  color: #333;
  font-weight: 600;
  margin-bottom: 10px;
}

.login-guide-desc {
  font-size: 14px;
  color: #666;
  margin-bottom: 20px;
  line-height: 1.5;
}

.login-guide-btn-group {
  display: flex;
  gap: 10px;
}

.login-guide-btn {
  flex: 1;
  border-radius: 20px;
  padding: 10px 0;
  font-size: 15px;
  border: none;
  transition: all 0.2s ease;
}

.btn-login {
  background-color: #ff4444;
  color: #fff;
}

.btn-login:hover {
  background-color: #e02830;
}

.btn-skip {
  background-color: #f5f5f7;
  color: #666;
}

.btn-skip:hover {
  background-color: #e5e5e5;
}

/* 关闭按钮（右上角） */
.login-guide-close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #f5f5f7;
  color: #999;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 14px;
}

/* ========== 新：浮动客服按钮 ========== */
.float-buttons {
    position: fixed;
    right: 15px;
    bottom: 80px;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.float-button {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: white;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #666;
    transition: all 0.3s ease;
    position: relative;
}

.float-button:hover {
    transform: scale(1.05);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}

.float-button.cart {
    color: #ff5000;
}

.float-button.cart .badge {
    position: absolute;
    top: -5px;
    right: -5px;
    background: #ff5000;
    color: white;
    border-radius: 50%;
    min-width: 18px;
    height: 18px;
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    font-weight: 600;
}

.float-button.top {
    display: none;
}

.float-button.top.show {
    display: flex;
}

.float-button i {
    font-size: 20px;
}

/* ========== 新：客服面板 ========== */
.chat-panel {
    position: fixed;
    bottom: 140px;
    right: 15px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
    z-index: 1001;
    width: 280px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: all 0.3s ease;
}

.chat-panel.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.chat-header {
    background: linear-gradient(90deg, #ff5000 0%, #ff6f33 100%);
    color: white;
    padding: 14px 18px;
    border-radius: 16px 16px 0 0;
    font-size: 15px;
    font-weight: 500;
    display: flex;
    align-items: center;
}

.chat-header i {
    margin-right: 10px;
    font-size: 18px;
}

.chat-items {
    padding: 15px;
}

.chat-item {
    display: flex;
    align-items: center;
    padding: 14px 0;
    border-bottom: 1px solid #f5f5f5;
    text-decoration: none;
    color: #333;
    transition: all 0.2s ease;
}

.chat-item:last-child {
    border-bottom: none;
}

.chat-item:hover {
    background: #fafafa;
    border-radius: 8px;
    padding: 14px 10px;
    margin: 0 -10px;
}

.chat-icon {
    width: 40px;
    height: 40px;
    background: #fff0e8;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 14px;
    flex-shrink: 0;
}

.chat-icon i {
    color: #ff5000;
    font-size: 18px;
}

.chat-info {
    flex: 1;
}

.chat-title {
    font-size: 15px;
    font-weight: 500;
    color: #333;
    margin-bottom: 4px;
}

.chat-desc {
    font-size: 13px;
    color: #666;
}

/* ========== 新：客服模块响应式优化 ========== */
/* 超小屏幕 */
@media (max-width: 480px) {
    .chat-panel {
        width: calc(100vw - 30px);
        right: 15px;
    }
    
    .float-buttons {
        bottom: 70px;
    }
}

/* 平板设备 */
@media (min-width: 481px) and (max-width: 768px) {
    .float-buttons {
        right: 20px;
        bottom: 100px;
    }
    
    .float-button {
        width: 55px;
        height: 55px;
    }
    
    .float-button i {
        font-size: 22px;
    }
}

/* 桌面设备 */
@media (min-width: 769px) {
    .float-buttons {
        right: 30px;
        bottom: 120px;
    }
    
    .float-button {
        width: 60px;
        height: 60px;
    }
    
    .float-button i {
        font-size: 24px;
    }
    
    .chat-panel {
        right: 30px;
        bottom: 190px;
        width: 300px;
    }
    
    .chat-header {
        padding: 16px 20px;
        font-size: 16px;
    }
}
/* ============================================
   底部样式 - 结束
   ============================================ */

/* ============================================
   首页样式 - 开始
   ============================================ */
    /* 内联CSS确保立即生效 */
    .home-page {
        font-family: 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;
        color: #333;
        line-height: 1.6;
        background: #f8f9fa;
    }
    /* 隐藏多余的br标签 */
    body > br {
        display: none !important;
    }
    body {
        margin: 0;
        padding: 0;
    }
    /* 修复问题1：小屏幕下多余的空白 */
    @media (max-width: 768px) {
        .d-none.d-sm-inline {
            display: none !important;
        }
    }
    
    /* ============================================
   首页样式 - 开始
   ============================================ */
/* 全局重置和基础样式 */
.home-page {
    font-family: 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;
    color: #333;
    line-height: 1.6;
    background: #f8f9fa;
}

/* Banner区域 - 调整到合适高度 */
.home-banner {
    position: relative;
    overflow: hidden;
    border-radius: 0 0 20px 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    margin-bottom: 50px;
    height: 650px; /* 调整为更合适的高度 */
}

.banner-slider {
    height: 100%;
    position: relative;
}

.banner-slide {
    position: relative;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #1a1a2e, #16213e);
}

/* Banner图片保持比例 */
.banner-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.banner-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0, 166, 90, 0.3), rgba(0, 0, 0, 0.5));
    z-index: 2;
}

.banner-content {
    position: relative;
    z-index: 3;
    text-align: center;
    max-width: 800px;
    padding: 0 30px;
}

.banner-title {
    font-size: 3.5rem;
    font-weight: 700;
    color: white;
    margin-bottom: 20px;
    text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3);
    animation: fadeInUp 1s ease;
}

.banner-subtitle {
    font-size: 1.3rem;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 30px;
    animation: fadeInUp 1s ease 0.3s both;
}

.banner-btn {
    display: inline-block;
    padding: 15px 40px;
    background: linear-gradient(135deg, #00a65a, #008d4c);
    color: white;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 600;
    font-size: 1.1rem;
    transition: all 0.3s ease;
    animation: fadeInUp 1s ease 0.6s both;
    box-shadow: 0 5px 20px rgba(0, 166, 90, 0.3);
    border: none;
    cursor: pointer;
}

.banner-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0, 166, 90, 0.4);
    color: white;
}

/* 服务特色区域 */
.features-section {
    padding: 80px 0;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    margin-bottom: 80px;
    border-radius: 20px;
}

.section-header {
    text-align: center;
    margin-bottom: 60px;
}

.section-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 20px;
    position: relative;
    display: inline-block;
}

.section-title:after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: linear-gradient(90deg, #00a65a, #5dca88);
    border-radius: 2px;
}

.section-subtitle {
    font-size: 1.1rem;
    color: #FFFFFF;
    max-width: 700px;
    margin: 0 auto;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 40px;
}

.feature-card {
    background: white;
    border-radius: 15px;
    padding: 40px 30px;
    text-align: center;
    transition: all 0.3s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.feature-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
    border-color: #00a65a;
}

.feature-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #00a65a, #5dca88);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px;
}

.feature-icon img {
    width: 40px;
    height: 40px;
    filter: brightness(0) invert(1);
}

.feature-title {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 15px;
}

.feature-desc {
    color: #6c757d;
    font-size: 1rem;
    line-height: 1.7;
}

/* 产品展示区域 */
.products-section {
    padding: 80px 0;
    background: white;
}
.products-section_xinping {
background: linear-gradient(135deg, #fff8f0 0%, #fff4e6 100%);
}
.section-header.with-action {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
    flex-wrap: wrap;
    gap: 20px;
}

.view-all-btn {
    display: inline-flex;
    align-items: center;
    padding: 10px 25px;
    background: transparent;
    color: #00a65a;
    border: 2px solid #00a65a;
    border-radius: 50px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
}

.view-all-btn:hover {
    background: #00a65a;
    color: white;
    transform: translateX(5px);
}

.view-all-btn i {
    margin-left: 8px;
    transition: transform 0.3s ease;
}

.view-all-btn:hover i {
    transform: translateX(5px);
}

/* 产品卡片 - 现代设计 */
.products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 30px;
    margin-bottom: 60px;
}

.product-card {
    background: white;
    border-radius: 15px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.product-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
    border-color: #00a65a;
}

/* 产品图片完美正方形处理 */
.product-image {
    position: relative;
    height: 280px;
    overflow: hidden;
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: all 0.5s ease;
    background: white;
    padding: 10px;
    border-radius: 8px;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.1);
	 z-index: 2;
}

.product-card:hover .product-image img {
    transform: scale(1.08);
}

.product-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    padding: 6px 15px;
    background: linear-gradient(135deg, #ff6b6b, #ee5a52);
    color: white;
    font-size: 0.8rem;
    font-weight: 600;
    border-radius: 20px;
    text-transform: uppercase;
    z-index: 2;
}

.product-badge.new {
    background: linear-gradient(135deg, #00a65a, #008d4c);
}

/* 特价商品倒计时样式 - 修改为窄长样式 */
.home-countdown-tag {
    position: absolute;
    bottom: 10px;
    right: 10px;
    background: linear-gradient(135deg, #ff4757, #ff3838);
    color: white;
    padding: 4px 8px; /* 减小内边距，更窄 */
    border-radius: 12px; /* 减小圆角 */
    font-size: 0.7rem; /* 减小字体大小 */
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center; /* 居中对齐 */
    z-index: 3;
    box-shadow: 0 2px 8px rgba(255, 71, 87, 0.4);
    backdrop-filter: blur(5px);
    font-family: 'Courier New', monospace;
    letter-spacing: 0.5px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    min-width: 75px; /* 增加最小宽度 */
    max-width: 85px; /* 减小最大宽度 */
    height: 24px; /* 固定高度 */
}

.home-countdown-tag i {
    margin-right: 4px;
    font-size: 0.65rem; /* 减小图标大小 */
    color: #fffa65;
}

.home-countdown-tag .home-countdown-time {
    font-weight: 700;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
    font-size: 0.65rem; /* 减小字体大小 */
}

.home-countdown-tag.expiring {
    background: linear-gradient(135deg, #ff9f43, #ffaf40);
    animation: pulse 1.5s infinite;
}

@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.03); }
    100% { transform: scale(1); }
}

.product-content {
    padding: 25px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.product-title {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 10px;
    line-height: 1.4;
    flex: 1;
}

.product-title a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
}

.product-title a:hover {
    color: #00a65a;
}

.product-description {
    color: #6c757d;
    font-size: 0.95rem;
    margin-bottom: 20px;
    line-height: 1.6;
    flex: 1;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.product-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 15px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    margin-top: auto;
}

.product-price {
    font-size: 1.5rem;
    font-weight: 700;
    color: #ff500b;
}

.product-price .original {
    font-size: 1rem;
    color: #6c757d;
    text-decoration: line-through;
    margin-left: 10px;
}

.product-stats {
    color: #30B239;
    font-size: 0.9rem;
}

.product-stats i {
    margin-right: 5px;
}

/* 趋势产品和办公必备区域 - 修正布局 */
.row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
}

.col-lg-4, .col-lg-8 {
    padding: 0 15px;
}

.col-lg-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.col-lg-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
}

.mb-5 {
    margin-bottom: 3rem !important;
}

.mb-lg-0 {
    margin-bottom: 0 !important;
}

/* 趋势产品区域 - 标题在上，内容在下 */
.trend-products-section {
    margin-bottom: 40px;
}

.trend-products-header {
    text-align: center;
    margin-bottom: 30px;
    padding: 20px;
    background: white;
    border-radius: 15px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    margin-bottom: 20px;
}

.trend-products-title {
    font-size: 1.8rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 10px;
    position: relative;
    display: inline-block;
}

.trend-products-title:after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #00a65a, #5dca88);
    border-radius: 2px;
}

/* 趋势产品列表样式 */
.products-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.products-list li {
    margin-bottom: 15px;
}

.product-item {
    display: flex;
    align-items: center;
    padding: 15px;
    background: white;
    border-radius: 12px;
    transition: all 0.3s ease;
    text-decoration: none;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    border: 1px solid #eee;
}

.product-item:hover {
    background: #f8f9fa;
    transform: translateX(5px);
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.12);
}

/* 趋势产品列表图片优化 */
.product-item img {
    width: 80px;
    height: 80px;
    border-radius: 10px;
    object-fit: contain;
    margin-right: 15px;
    background: white;
    padding: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    flex-shrink: 0;
}

.item-info {
    flex: 1;
    min-width: 0;
}

.item-title {
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 5px;
    font-size: 1rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.item-price {
    color: #ff500b;
    font-weight: 600;
    font-size: 1.1rem;
}

.badge {
    padding: 0.35em 0.65em;
    font-size: 0.75em;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25rem;
}

.badge-danger {
    color: #fff;
    background-color: #dc3545;
}

.ml-2 {
    margin-left: 0.5rem !important;
}

/* 三栏产品展示 */
.triple-products {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin: 60px 0;
}

.category-products {
    background: white;
    border-radius: 15px;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
}

.category-products:hover {
    transform: translateY(-5px);
}

.category-header {
    text-align: center;
    margin-bottom: 30px;
}

.category-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #00a65a, #5dca88);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 15px;
}

.category-icon i {
    color: white;
    font-size: 1.5rem;
}

.category-title {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2c3e50;
}

/* 三栏产品列表 */
.category-products .products-list li {
    margin-bottom: 12px;
}

.category-products .product-item {
    padding: 12px;
}

.category-products .product-item img {
    width: 70px;
    height: 70px;
    padding: 6px;
}

/* 特价商品专区 - 首页专用样式 */
.special-offer-section {
    padding: 80px 0;
    background: linear-gradient(135deg, #fff8f0 0%, #fff4e6 100%);
    margin: 80px 0;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    border: 2px solid #ffeaa7;
}

.special-offer-section:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #ff6b6b, #ff7d00, #ff9f43);
    z-index: 1;
}

.home-countdown-banner {
    background: linear-gradient(135deg, #ff7d00, #ff4500, #ff6b6b);
    color: white;
    padding: 12px 25px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    margin-bottom: 25px;
    box-shadow: 0 5px 15px rgba(255, 125, 0, 0.4);
    position: relative;
    overflow: hidden;
}

.home-countdown-banner:after {
    content: '';
    position: absolute;
    top: -8px;
    left: -8px;
    right: -8px;
    bottom: -8px;
    background: linear-gradient(45deg, 
        rgba(255, 255, 255, 0.1) 0%, 
        rgba(255, 255, 255, 0.2) 25%, 
        rgba(255, 255, 255, 0.1) 50%, 
        rgba(255, 255, 255, 0.2) 75%, 
        rgba(255, 255, 255, 0.1) 100%);
    background-size: 200% 200%;
    animation: shine 3s infinite;
    z-index: 0;
    border-radius: 12px;
}

@keyframes shine {
    0% { background-position: -200% -200%; }
    100% { background-position: 200% 200%; }
}

.home-countdown-banner i {
    font-size: 1.1rem;
    margin-right: 8px;
    position: relative;
    z-index: 1;
}

.home-countdown-timer {
    font-weight: 700;
    font-size: 1rem;
    font-family: 'Courier New', monospace;
    position: relative;
    z-index: 1;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

/* 新闻资讯 */
.news-section {
    padding: 80px 0;
    background: linear-gradient(135deg, #fff8f0 0%, #fff4e6 100%);
}

.news-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
    margin-top: 40px;
}

.news-card {
    background: white;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    height: 100%;
}

.news-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
}
/* 基础样式：通用属性抽离，减少冗余 */
.news-date,
.news-date-0,
.news-date-1,
.news-date-2,
.news-date-3,
.news-date-4,
.news-date-5,
.news-date-6,
.news-date-7 {
    color: white;
    padding: 15px;
    text-align: center;
    /* 可选：加圆角让渐变更柔和 */
    border-radius: 4px;
    /* 可选：加阴影增强视觉层次 */
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* 不同的渐变背景（从绿系过渡到蓝/橙/紫系，视觉协调） */
.news-date {
    background: linear-gradient(135deg, #00a65a, #008d4c); /* 原基础绿 */
}
.news-date-0 {
    background: linear-gradient(135deg, #28a745, #1e7e34); /* 深绿渐变 */
}
.news-date-1 {
    background: linear-gradient(135deg, #17a2b8, #138496); /* 青蓝渐变 */
}
.news-date-2 {
    background: linear-gradient(135deg, #007bff, #0062cc); /* 经典蓝渐变 */
}
.news-date-3 {
    background: linear-gradient(135deg, #6610f2, #520dc2); /* 紫蓝渐变 */
}
.news-date-4 {
    background: linear-gradient(135deg, #e83e8c, #d63384); /* 玫红渐变 */
}
.news-date-5 {
    background: linear-gradient(135deg, #fd7e14, #e86a00); /* 橙红渐变 */
}
.news-date-6 {
    background: linear-gradient(135deg, #ffc107, #e0a800); /* 金黄渐变 */
}
.news-date-7 {
    background: linear-gradient(135deg, #343a40, #23272b); /* 深灰渐变 */
}


.date-day {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
}

.date-month {
    font-size: 1rem;
    margin-top: 5px;
}

.news-content {
    padding: 25px;
}

.news-title {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 15px;
    line-height: 1.4;
}

.news-title a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
}

.news-title a:hover {
    color: #00a65a;
}

.news-excerpt {
    color: #6c757d;
    line-height: 1.7;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

/* 促销横幅 */
.promo-banner {
    background: linear-gradient(135deg, #1a1a2e, #16213e);
    color: white;
    padding: 60px 0;
    margin: 80px 0;
    border-radius: 20px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.promo-banner:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?ixlib=rb-1.2.1&auto=format&fit=crop&w=1920&q=80') center center no-repeat;
    background-size: cover;
    opacity: 0.6;
    z-index: 1;
}

.promo-content {
    position: relative;
    z-index: 2;
}

.promo-tag {
    display: inline-block;
    background: #ff500b;
    color: white;
    padding: 8px 20px;
    border-radius: 20px;
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 20px;
    box-shadow: 0 4px 15px rgba(255, 80, 11, 0.3);
}

.promo-title {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 30px;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.promo-btn {
    display: inline-block;
    padding: 15px 40px;
    background: white;
    color: #ff500b;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 600;
    font-size: 1.1rem;
    transition: all 0.3s ease;
    box-shadow: 0 5px 20px rgba(255, 255, 255, 0.2);
    border: none;
    cursor: pointer;
}

.promo-btn:hover {
    background: #ff500b;
    color: white;
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(255, 80, 11, 0.4);
}

/* 合作伙伴 */
.partners-section {
    padding: 80px 0;
    background: url('/uploads/demo/Banner_hezuo.jpeg') center center no-repeat;
    background-size: cover;
    background-attachment: scroll;
    min-height: 100%;
}

.partners-slider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 50px;
    flex-wrap: wrap;
    margin-top: 40px;
}

.partner-logo {
    width: 260px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 10px;
    padding: 15px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.partner-logo:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.partner-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: grayscale(100%);
    opacity: 0.7;
    transition: all 0.3s ease;
}

.partner-logo:hover img {
    filter: grayscale(0%);
    opacity: 1;
}

/* 底部宣传 */
.bottom-ads {
    padding: 60px 0;
    background: white;
}

.ads-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    text-align: center;
}

.ad-item {
    padding: 20px;
    transition: all 0.3s ease;
}

.ad-item:hover {
    transform: translateY(-5px);
}

.ad-item img {
    width: 60px;
    height: 60px;
    object-fit: contain;
    margin-bottom: 15px;
}

.ad-title {
    font-weight: 600;
    color: #2c3e50;
    font-size: 1.1rem;
}

/* 图片加载状态处理 */
.product-image::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: loading 1.5s infinite;
    z-index: 1;
    border-radius: 8px;
}

.product-image.loaded::before {
    display: none;
}

@keyframes loading {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* 动画效果 */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-up {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.animate-up.visible {
    opacity: 1;
    transform: translateY(0);
}

/* 容器样式 */
.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1140px;
    }
}

.text-center {
    text-align: center !important;
}

.py-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
}

.text-muted {
    color: #6c757d !important;
}

.fa-3x {
    font-size: 3em;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

/* 响应式设计 */
@media (max-width: 1200px) {
    .banner-title {
        font-size: 3rem;
    }
    
    .triple-products {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }
    
    .triple-products > *:last-child {
        grid-column: 1 / -1;
        max-width: 500px;
        margin: 0 auto;
    }
    
    .home-banner {
        height: 600px;
    }
}

@media (max-width: 992px) {
    .home-banner {
        height: 500px;
    }
    
    .banner-title {
        font-size: 2.5rem;
    }
    
    .section-title {
        font-size: 2rem;
    }
    
    .trend-products-title {
        font-size: 1.8rem;
    }
    
    .promo-title {
        font-size: 2rem;
    }
    
    .products-grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    }
    
    .product-image {
        height: 250px;
    }
    
    .col-lg-4, .col-lg-8 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .col-lg-4 {
        margin-bottom: 40px;
    }
}

@media (max-width: 768px) {
    .home-banner {
        height: 400px;
        border-radius: 0 0 15px 15px;
    }
    
    .banner-title {
        font-size: 2rem;
    }
    
    .banner-subtitle {
        font-size: 1.1rem;
    }
    
    .section-title {
        font-size: 1.8rem;
    }
    
    .trend-products-title {
        font-size: 1.6rem;
    }
    
    .features-grid {
        grid-template-columns: 1fr;
    }
    
    .section-header.with-action {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }
    
    .triple-products {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .news-grid {
        grid-template-columns: 1fr;
    }
    
    .promo-title {
        font-size: 1.8rem;
    }
    
    .partners-slider {
        gap: 30px;
    }
    
    .partner-logo {
        width: 120px;
        height: 70px;
    }
    
    .product-image {
        height: 220px;
    }
    
    .home-countdown-tag {
        padding: 3px 6px;
        font-size: 0.6rem;
        border-radius: 10px;
        min-width: 65px;
        max-width: 75px;
        height: 22px;
        bottom: 8px;
        right: 8px;
    }
    
    .home-countdown-tag i {
        font-size: 0.55rem;
        margin-right: 3px;
    }
    
    .home-countdown-tag .home-countdown-time {
        font-size: 0.55rem;
    }
}

@media (max-width: 576px) {
    .home-banner {
        height: 350px;
    }
    
    .banner-title {
        font-size: 1.8rem;
    }
    
    .banner-btn {
        padding: 12px 30px;
        font-size: 1rem;
    }
    
    .trend-products-title {
        font-size: 1.5rem;
    }
    
    .products-grid {
        grid-template-columns: 1fr;
    }
    
    .product-content {
        padding: 20px;
    }
    
    .promo-title {
        font-size: 1.5rem;
    }
    
    .promo-btn {
        padding: 12px 30px;
        font-size: 1rem;
    }
    
    .product-image {
        height: 200px;
    }
    
    .product-item img {
        width: 60px;
        height: 60px;
    }
    
    .category-products .product-item img {
        width: 60px;
        height: 60px;
    }
    
    .home-countdown-banner {
        padding: 10px 20px;
        margin-bottom: 20px;
    }
    
    .home-countdown-banner i {
        font-size: 0.9rem;
        margin-right: 6px;
    }
    
    .home-countdown-timer {
        font-size: 0.9rem;
    }
    
    .home-countdown-tag {
        padding: 2px 5px;
        font-size: 0.55rem;
        border-radius: 8px;
        min-width: 60px;
        max-width: 70px;
        height: 20px;
    }
    
    .home-countdown-tag i {
        font-size: 0.5rem;
        margin-right: 2px;
    }
    
    .home-countdown-tag .home-countdown-time {
        font-size: 0.5rem;
    }
}

/* Banner指示器 */
.banner-dots {
    position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    gap: 10px;
    z-index: 4;
}

.banner-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    cursor: pointer;
    transition: all 0.3s ease;
}

.banner-dot.active {
    background: white;
    transform: scale(1.2);
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.8);
}

.banner-dot:hover {
    background: white;
}

/* 空状态提示 */
.empty-state {
    text-align: center;
    padding: 60px 20px;
    background: white;
    border-radius: 15px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.empty-state-icon {
    font-size: 4rem;
    color: #dee2e6;
    margin-bottom: 20px;
}

.empty-state-text h4 {
    color: #6c757d;
    margin-bottom: 10px;
}

.empty-state-text p {
    color: #adb5bd;
}

/* 通用样式 */
.mr-1 {
    margin-right: 0.25rem !important;
}

.d-flex {
    display: flex !important;
}

.align-items-center {
    align-items: center !important;
}

/* 为1920*800图片优化Banner显示 */
@media (min-width: 1920px) {
    .home-banner {
        height: 700px;
    }
    
    .banner-slide img {
        object-fit: cover;
    }
}

/* 调整头部间距 */
body > br {
    display: none !important;
}

/* 确保页面正常显示 */
body {
    margin: 0;
    padding: 0;
}

/* 修复问题1：小屏幕下多余的空白 */
@media (max-width: 768px) {
    .d-none.d-sm-inline {
        display: none !important;
    }
}

/* 修复问题2：趋势产品标题位置 */
.trend-products-container {
    background: white;
    border-radius: 15px;
    padding: 25px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    margin-bottom: 30px;
}

.trend-products-container .trend-products-header {
    text-align: center;
    margin-bottom: 25px;
    padding-bottom: 15px;
    border-bottom: 2px solid #f0f0f0;
}

/* ============================================
   重新设计的产品标签页轮播样式 - 核心优化
   ============================================ */
/* ============================================
   重新设计的产品标签页轮播样式 - 核心优化
   ============================================ */
/* 产品区域整体样式 - 重新设计 */
.product_area {
    padding: 60px 0;
    background: linear-gradient(135deg, #fff8f0 0%, #fff4e6 100%);
    margin-bottom: 60px !important;
    position: relative;

}

/* 产品区域装饰元素 */
.product_area::before {
    content: none; 
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(135deg, #fff8f0 0%, #fff4e6 100%);
    border-radius: 2px;
}

/* 产品头部标题 - 重新设计 */
.product_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 50px;
    flex-wrap: wrap;
    gap: 25px;
    padding-bottom: 20px;
}

.section_title {
    text-align: left;
}

.section_title h2 {
    font-size: 2.2rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 15px;
    position: relative;
    padding-bottom: 12px;
    display: inline-block;
}

.section_title h2 span {
    color: #00a65a;
}

.section_title h2::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #00a65a, #5dca88);
    border-radius: 2px;
}

.section_title p {
    color: #6c757d;
    font-size: 1rem;
    margin: 0;
    max-width: 700px;
}

/* 产品标签按钮 - 重新设计 */
.product_tab_btn .nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.product_tab_btn .nav li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.product_tab_btn .nav li a {
    display: inline-flex;
    align-items: center;
    padding: 12px 28px;
    background: #f8f9fa;
    color: #2c3e50;
    border: 1px solid #e9ecef;
    border-radius: 50px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    font-size: 1rem;
    position: relative;
    overflow: hidden;
}

/* 标签按钮悬停和激活效果 */
.product_tab_btn .nav li a.active,
.product_tab_btn .nav li a:hover {
    background: #00a65a;
    color: white;
    border-color: #00a65a;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 166, 90, 0.15);
}

/* 更多商品按钮特殊样式 */
.product_tab_btn .nav li a.title {
    color: #00a65a;
    background-color: transparent;
    border: 2px solid #00a65a;
}

.product_tab_btn .nav li a.title:hover {
    background: #00a65a;
    color: white;
    transform: translateY(-2px);
}

/* 标签内容区域 */
.tab-content {
    margin-top: 30px;
    border: none !important;
}
.tab-content_xin {
    margin-top: 30px;
    border: none !important;
    background: linear-gradient(135deg, #fff8f0 0%, #fff4e6 100%);
}

.tab-pane {
    padding: 15px 0;
    border: none !important;

}

/* 5列网格布局核心样式（无框） */
.products-grid-fix {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
    border: none !important;
    box-shadow: none !important;
}

.products-grid-fix > div {
    padding: 0 10px;
    box-sizing: border-box;
    border: none !important;
    margin-bottom: 20px;
}

/* 单个产品卡片 - 重新设计 */
.single_product {
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.4s ease;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
    border: 1px solid #f0f0f0;
    height: 100%;
    display: flex;
    flex-direction: column;
    margin: 0;
    position: relative;
    background:#f5f5f5;
}

/* 卡片悬停效果增强 */
.single_product:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
    border-color: #00a65a;
}

/* 产品图片区域 - 重新设计 */
.product_thumb {
    position: relative;
    height: 260px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
    border-bottom: 1px solid #f5f5f5;
    
}

.product_thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: all 0.6s ease;
    padding: 8px;
    border-radius: 6px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.single_product:hover .product_thumb .primary_img {
    opacity: 1;
    transform: scale(1.05);
}

.product_thumb .secondary_img {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: all 0.6s ease;
}

.single_product:hover .product_thumb .secondary_img {
    opacity: 1;
    transform: scale(1.05);
}

/* 产品标签（新品/热销）- 重新设计 */
.label_product {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
}

.label_new, .label_sale {
    display: inline-block;
    padding: 5px 12px;
    font-size: 0.75rem;
    font-weight: 600;
    color: white;
    border-radius: 20px;
    text-transform: uppercase;
    z-index: 2;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}

.label_new {
    background: linear-gradient(135deg, #00a65a, #008d4c);
}

.label_sale {
    background: linear-gradient(135deg, #ff6b6b, #ee5a52);
}

/* 产品操作按钮（收藏/详情）- 重新设计 */
.action_links {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    opacity: 0;
    transition: all 0.4s ease;
    background: rgba(255, 255, 255, 0.95);
    padding: 10px;
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}

.single_product:hover .action_links {
    opacity: 1;
}

.action_links ul {
    display: flex;
    gap: 15px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.action_links li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    background: white;
    border-radius: 50%;
    color: #00a65a;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e9ecef;
}

.action_links li a:hover {
    background: linear-gradient(135deg, #00a65a, #5dca88);
    color: white;
    transform: scale(1.1);
    box-shadow: 0 4px 15px rgba(0, 166, 90, 0.2);
    border-color: transparent;
}

/* 产品内容区域 - 重新设计 */
.product_content {
    padding: 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* 产品评分 - 优化样式 */
.product_rating {
    margin-bottom: 8px;
}

.product_rating ul {
    display: flex;
    padding: 0;
    margin: 0;
    list-style: none;
    gap: 2px;
}

.product_rating li a {
    color: #ffc107;
    font-size: 13px;
}

/* 产品名称 - 重新设计 */
.product_name {
    font-size: 1.15rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 8px;
    line-height: 1.4;
    flex: 1;
}

.product_name a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
}

.product_name a:hover {
    color: #00a65a;
}

.ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
}

.line-1 {
    white-space: nowrap;
}

/* 产品价格 - 重新设计 */
.price_box {
    margin-bottom: 12px;
}

.current_price {
    font-size: 1.4rem;
    font-weight: 700;
    color: #ff500b;
}

/* 产品颜色选项 - 重新设计 */
.swatches-colors ul {
    display: flex;
    padding: 0;
    margin: 0;
    list-style: none;
    gap: 8px;
}

.swatches-colors li a {
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    transition: all 0.3s ease;
    position: relative;
}

.swatches-colors li a:hover {
    transform: scale(1.2);
    box-shadow: 0 0 0 1px rgba(255, 255, 255), 0 0 0 2px currentColor;
}

.color1 { background-color: #00a65a; }
.color2 { background-color: #ff500b; }
.color3 { background-color: #2c3e50; }
.color4 { background-color: #ffc107; }

/* 响应式样式 - 重新优化 */
@media (max-width: 1200px) {
    .section_title h2 {
        font-size: 2rem;
    }
    
    .product_column4 {
        gap: 20px;
    }
}

@media (max-width: 992px) {
    .product_header {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
        margin-bottom: 40px;
    }
    
    .product_tab_btn .nav {
        width: 100%;
        overflow-x: auto;
        padding-bottom: 10px;
        scrollbar-width: thin;
    }
    
    .product_thumb {
        height: 240px;
    }
    
    .section_title h2 {
        font-size: 1.8rem;
    }
}

@media (max-width: 768px) {
    .product_area {
        padding: 40px 0;
        margin-bottom: 40px !important;
    }
    
    .section_title h2 {
        font-size: 1.6rem;
    }
    
    .product_thumb {
        height: 220px;
    }
    
    .product_content {
        padding: 18px;
    }
    
    .product_name {
        font-size: 1rem;
    }
    
    .current_price {
        font-size: 1.2rem;
    }
    
    .product_header {
        margin-bottom: 30px;
    }
    
    .product_tab_btn .nav li a {
        padding: 10px 20px;
        font-size: 0.9rem;
    }
}

@media (max-width: 576px) {
    .product_header {
        margin-bottom: 25px;
    }
    
    .product_tab_btn .nav li a {
        padding: 8px 15px;
        font-size: 0.85rem;
    }
    
    .action_links li a {
        width: 38px;
        height: 38px;
    }
    
    .product_thumb {
        height: 200px;
    }
    
    .section_title h2 {
        font-size: 1.4rem;
    }
    
    .product_column4 {
        grid-template-columns: 1fr;
    }
}

/* Owl Carousel 样式适配 - 优化 */
.owl-carousel .owl-stage-outer {
    overflow: hidden;
    padding: 10px 0;
}

.owl-carousel .owl-stage {
    display: flex;
}

.owl-carousel .owl-item {
    float: none;
}

/* 确保产品卡片在大屏下正常显示 */
@media (min-width: 992px) {
    .product_column4 {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .product_column4 {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .product_column4 {
        grid-template-columns: repeat(2, 1fr);
    }
}
/* 5列网格布局核心样式 */
.products-grid-fix {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}
.products-grid-fix > div {
    padding: 0 10px;
    box-sizing: border-box;
}
/* 大屏（≥1200px）每行5个 */
@media (min-width: 1200px) {
    .products-grid-fix > div.col-xl-2 {
        width: 20% !important;
        flex: 0 0 20% !important;
        max-width: 20% !important;
    }
}
/* 中屏（992-1199px）每行4个 */
@media (min-width: 992px) and (max-width: 1199px) {
    .products-grid-fix > div.col-lg-3 {
        width: 25% !important;
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }
}
/* 小屏（768-991px）每行3个 */
@media (min-width: 768px) and (max-width: 991px) {
    .products-grid-fix > div.col-md-4 {
        width: 33.3333% !important;
        flex: 0 0 33.3333% !important;
        max-width: 33.3333% !important;
    }
}
/* 超小屏（<768px）每行2个 */
@media (max-width: 767px) {
    .products-grid-fix > div.col-sm-6 {
        width: 50% !important;
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }
}
/* 产品项样式优化 */
.single_product {
    width: 100%;
    height: 100%;
}
.product_thumb img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
/* 间距优化 */
.mb-4 {
    margin-bottom: 1.5rem !important;
}
/* ============================================
   首页样式------结束
   ============================================ */
/* ============================================
   商品列表页样式
   ============================================ */
/* 列表页筛选容器 */
.filter-container {
    background-color: #f8f9fa;
    border-radius: 8px;
    padding: 15px 20px;
    margin-bottom: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.filter-title {
    font-size: 15px;
    font-weight: 600;
    color: #333;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
}

.filter-title i {
    color: #dc3545;
    margin-right: 8px;
}

/* 筛选按钮组 */
.btn-group .btn {
    padding: 8px 18px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 20px !important;
    transition: all 0.3s ease;
    margin-right: 10px;
    border-width: 1px;
}

.btn-group .btn-outline-primary {
    color: #007bff;
    border-color: #007bff;
    background-color: transparent;
}

.btn-group .btn-outline-primary:hover {
    color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,123,255,0.2);
}

.btn-group .btn-outline-danger {
    color: #dc3545;
    border-color: #dc3545;
    background-color: transparent;
}

.btn-group .btn-outline-danger:hover {
    color: #fff !important;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(220,53,69,0.2);
}

.btn-group .btn.active {
    color: #fff !important;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    box-shadow: 0 4px 8px rgba(220,53,69,0.2);
}

.btn-group .btn.active:hover {
    opacity: 0.95 !important;
    transform: translateY(0);
}

/* 列表页产品图片容器 */
.product-img {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
}

.product-img img {
    border-radius: 8px;
    transition: transform 0.3s ease;
    width: 100%;
    height: auto;
    z-index: 1;
}

.single-products:hover .product-img img {
    transform: scale(1.03);
}

/* 列表页单个产品容器 */
.single-products {
    height: 100%;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    position: relative;
}

.single-products:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
    border-color: #00a65a;
}

/* 列表页产品内容区域 */
.product-content {
    padding: 8px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.products-price {
    margin-top: auto;
    padding-top: 5px;
}

/* 面包屑导航样式 */
.breadcrumb-container {
    background: #f8f9fa;
    padding: 10px 0;
}

.breadcrumb-container a {
    color: #666;
    text-decoration: none;
    transition: color 0.3s ease;
}

.breadcrumb-container a:hover {
    color: #00a65a;
}

.breadcrumb-container .fa-angle-right {
    color: #999;
    margin: 0 5px;
}

/* 列表页搜索表单 */
.search-input {
    border-radius: 50px !important;
    border: 1px solid #ddd;
    transition: all 0.3s ease;
}

.search-input:focus {
    border-color: #00a65a;
    box-shadow: 0 0 0 0.2rem rgba(0, 166, 90, 0.25);
}

.search-submit {
    background: #00a65a;
    color: #fff;
    border-radius: 20px !important;
    transition: all 0.3s ease;
}

.search-submit:hover {
    background: #008d4c;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 166, 90, 0.3);
}

/* 列表页侧边栏样式 */
.sidebar-container {
    padding: 0;
}

.sidebar-title {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
    position: relative;
    padding-bottom: 8px;
}

.sidebar-title:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 2px;
    background: #00a65a;
}

.sidebar-list li {
    border-bottom: 1px solid #f0f0f0;
    padding: 10px 0;
    transition: all 0.3s ease;
}

.sidebar-list li:last-child {
    border-bottom: none;
}

.sidebar-list li:hover {
    padding-left: 5px;
}

.sidebar-list li a {
    color: #555;
    text-decoration: none;
    display: block;
    transition: color 0.3s ease;
}

.sidebar-list li a:hover {
    color: #00a65a;
}

/* 列表页热销产品样式 */
.hot-product-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
    padding: 10px;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.hot-product-item:hover {
    background: #f8f9fa;
}

.hot-product-img {
    width: 60px;
    height: 60px;
    border-radius: 6px;
    overflow: hidden;
    margin-right: 10px;
    flex-shrink: 0;
}

.hot-product-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.hot-product-item:hover .hot-product-img img {
    transform: scale(1.05);
}

.hot-product-info {
    flex: 1;
}

.hot-product-title {
    font-size: 14px;
    font-weight: 500;
    color: #333;
    margin-bottom: 5px;
    line-height: 1.4;
}

.hot-product-desc {
    font-size: 12px;
    color: #666;
    line-height: 1.5;
}

/* 列表页分页样式 */
.list-pagination {
    margin: 30px 0;
}


.pagination li {
    list-style: none;
}

.pagination li a,
.pagination li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    color: #666;
    transition: all 0.3s ease;
    text-decoration: none;
}

.pagination li.active span {
    background: #00a65a;
    color: #fff;
    font-weight: 600;
    border-color: #00a65a;
}

.pagination li a:hover {
    background: #00a65a;
    color: #fff;
    border-color: #00a65a;
    transform: translateY(-2px);
}

.pagination li.disabled span {
    background: #f4f4f4;
    cursor: not-allowed;
    opacity: 0.6;
}

/* 列表页无数据提示 */
.no-data-message {
    padding: 50px 0;
    text-align: center;
    color: #666;
}

.no-data-message i {
    font-size: 24px;
    color: #999;
    margin-bottom: 15px;
}

/* ============================================
   商品列表页样式结束
   ============================================ */

/* ============================================
   商品详情页样式
   ============================================ */
/* 详情页CSS - 优化增强版 */
/* ===== CSS变量定义 ===== */
.detail-page {
    /* 主色调系统 - 绿色系 + 红色强调色 */
    --primary-color: #00a65a;
    --primary-light: rgba(0, 166, 90, 0.1);
    --primary-medium: rgba(0, 166, 90, 0.15);
    --primary-dark: rgba(0, 166, 90, 0.25);
    
    /* 强调色系统 - 红色系 */
    --accent-color: #ff4757;
    --accent-light: rgba(255, 71, 87, 0.1);
    --accent-medium: rgba(255, 71, 87, 0.15);
    --accent-dark: rgba(255, 71, 87, 0.25);
    
    /* 辅助色系统 */
    --success-color: #1dd1a1;
    --warning-color: #feca57;
    --info-color: #54a0ff;
    --danger-color: #ff4757; /* 与强调色统一 */
    
    /* 中性色系统 */
    --text-primary: #333;
    --text-secondary: #666;
    --text-muted: #999;
    --border-color: #e9ecef;
    --bg-light: #f8f9fa;
    --bg-lighter: #fef2f2;
    --bg-white: #fff;
    
    /* 间距系统 */
    --space-xs: 4px;
    --space-sm: 8px;
    --space-md: 16px;
    --space-lg: 24px;
    --space-xl: 32px;
    
    /* 圆角系统 */
    --radius-xs: 2px;
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 20px;
    --radius-round: 50px;
    
    /* 阴影系统 */
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.12);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.1);
    --shadow-accent: 0 4px 15px rgba(255, 71, 87, 0.25);
    --shadow-primary: 0 4px 15px rgba(0, 166, 90, 0.25);
    
    /* 过渡效果 */
    --transition-fast: 0.15s ease;
    --transition-normal: 0.25s ease;
    --transition-slow: 0.35s ease;
    
    /* 动画效果 */
    --animation-duration: 0.3s;
    --animation-timing: cubic-bezier(0.4, 0, 0.2, 1);
}

/* ===== 关键组件样式优化 ===== */

/* 1. 主标签徽章 */
.detail-page .main-tag-badge {
    position: absolute;
    top: var(--space-md);
    left: var(--space-xl);
    z-index: 10;
    padding: 6px 16px;
    font-size: 14px;
    font-weight: 700;
    border-radius: var(--radius-md);
    background: linear-gradient(135deg, var(--accent-color) 0%, #ff6b6b 100%);
    color: white;
    box-shadow: var(--shadow-md);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}

/* 2. 倒计时 - 特别强化 */
.detail-page .countdown-container {
    padding: var(--space-sm) var(--space-md);
    border-radius: var(--radius-md);
    background: linear-gradient(135deg, var(--accent-color) 0%, #ff3838 100%);
    box-shadow: var(--shadow-accent);
    display: inline-block;
    position: relative;
    overflow: hidden;
}

.detail-page .countdown-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    animation: shimmer 2s infinite;
}

@keyframes shimmer {
    100% { left: 100%; }
}

.detail-page .countdown-time {
    letter-spacing: 1.5px;
    font-size: 16px;
    font-weight: 800;
    color: white;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    min-width: 100px;
    text-align: center;
    display: inline-block;
    position: relative;
    z-index: 1;
}

/* 3. 价格显示优化 */
.detail-page .special-price {
    color: var(--accent-color);
    font-weight: 800;
    font-size: 1.5rem;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    position: relative;
    display: inline-block;
    padding: 0 4px;
}

.detail-page .special-price::after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--accent-color) 0%, #ffa502 100%);
    border-radius: var(--radius-xs);
    animation: widthPulse 2s ease-in-out infinite;
}

@keyframes widthPulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

/* 4. 按钮系统全面优化 */
.detail-page .btn {
    border-radius: var(--radius-md);
    padding: 10px 24px;
    font-weight: 600;
    transition: all var(--transition-normal);
    border: 1px solid transparent;
    position: relative;
    overflow: hidden;
}

.detail-page .btn::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 5px;
    height: 5px;
    background: rgba(255, 255, 255, 0.5);
    opacity: 0;
    border-radius: 100%;
    transform: scale(1, 1) translate(-50%);
    transform-origin: 50% 50%;
}

.detail-page .btn:focus:not(:active)::after {
    animation: ripple 1s ease-out;
}

@keyframes ripple {
    0% {
        transform: scale(0, 0);
        opacity: 0.5;
    }
    100% {
        transform: scale(20, 20);
        opacity: 0;
    }
}

.detail-page .btn-rounded {
    border-radius: var(--radius-round);
}

/* 购买按钮 - 红色强调 */
.detail-page .btn-danger,
.detail-page .custom-demo-btn {
    background: linear-gradient(135deg, var(--accent-color) 0%, #ff3838 100%);
    border: none;
    box-shadow: var(--shadow-accent);
    color: white;
}

.detail-page .btn-danger:hover,
.detail-page .custom-demo-btn:hover {
    background: linear-gradient(135deg, #ff3838 0%, #ff1e1e 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 71, 87, 0.4);
}

.detail-page .custom-demo-btn:active,
.detail-page .btn-danger:active {
    transform: translateY(0);
    box-shadow: var(--shadow-sm);
}

/* 加入购物车按钮 - 绿色主色 */
.detail-page .btn-success {
    background: linear-gradient(135deg, var(--success-color) 0%, #00d2d3 100%);
    border: none;
    box-shadow: 0 4px 15px rgba(29, 209, 161, 0.3);
    color: white;
}

.detail-page .btn-success:hover {
    background: linear-gradient(135deg, #1dd1a1 0%, #10ac84 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(29, 209, 161, 0.4);
}

/* 5. 规格选择系统优化 */
.detail-page .attr-row {
    margin-bottom: var(--space-lg);
    padding-bottom: var(--space-md);
    border-bottom: 2px solid var(--border-color);
}

.detail-page .descartes {
    margin: var(--space-xs) var(--space-sm);
    padding: 8px 16px;
    border: 2px solid var(--border-color);
    border-radius: var(--radius-round);
    background: var(--bg-light);
    color: var(--text-secondary);
    cursor: pointer;
    transition: all var(--transition-normal);
    font-weight: 500;
}

.detail-page .descartes:hover {
    border-color: var(--accent-color);
    color: var(--accent-color);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 71, 87, 0.15);
}

.detail-page .descartes.active {
    background: linear-gradient(135deg, var(--accent-color) 0%, #ff6b6b 100%);
    color: white;
    border-color: transparent;
    box-shadow: 0 4px 12px rgba(255, 71, 87, 0.3);
    animation: activePulse 1.5s ease-in-out infinite;
}

@keyframes activePulse {
    0%, 100% { box-shadow: 0 4px 12px rgba(255, 71, 87, 0.3); }
    50% { box-shadow: 0 6px 20px rgba(255, 71, 87, 0.4); }
}

/* 6. 数量选择器优化 */
.detail-page .quantity {
    width: 150px;
    height: 42px;
    position: relative;
    border-radius: var(--radius-md);
    overflow: hidden;
    border: 2px solid var(--border-color);
}

.detail-page .quantity .minus,
.detail-page .quantity .plus {
    position: absolute;
    width: 42px;
    height: 100%;
    background: var(--bg-light);
    cursor: pointer;
    z-index: 2;
    transition: all var(--transition-normal);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 18px;
    color: var(--text-secondary);
}

.detail-page .quantity .minus {
    left: 0;
    border-right: 1px solid var(--border-color);
}

.detail-page .quantity .plus {
    right: 0;
    border-left: 1px solid var(--border-color);
}

.detail-page .quantity .minus:hover,
.detail-page .quantity .plus:hover {
    background: linear-gradient(135deg, #74b9ff 0%, var(--info-color) 100%);
    color: white;
    transform: scale(1.05);
}

.detail-page .quantity .qty {
    width: 100%;
    height: 100%;
    padding: 0 50px;
    border: none;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    background: white;
    outline: none;
}

/* 7. 图片轮播优化 */
.detail-page .owl-carousel.nav-dark {
    border: 2px solid var(--border-color);
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.detail-page .owl-carousel .big {
    width: 100%;
    height: auto;
    max-height: 450px;
    object-fit: contain;
    padding: var(--space-md);
    background: var(--bg-light);
}

.detail-page .owl-carousel .small {
    width: 80px;
    height: 80px;
    object-fit: cover;
    cursor: pointer;
    border: 3px solid transparent;
    transition: all var(--transition-normal);
    border-radius: var(--radius-sm);
    margin: var(--space-xs);
}

.detail-page .owl-carousel .small:hover,
.detail-page .owl-carousel .small.active {
    border-color: var(--accent-color);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(255, 71, 87, 0.2);
}

/* 8. 选项卡优化 */
.detail-page .nav-tabs {
    border-bottom: 3px solid var(--border-color);
    margin-top: var(--space-xl);
}

.detail-page .nav-tabs .nav-link {
    border: none;
    padding: 12px 24px;
    color: var(--text-secondary);
    font-weight: 600;
    transition: all var(--transition-normal);
    position: relative;
    margin-bottom: -3px;
}

.detail-page .nav-tabs .nav-link:hover {
    color: var(--accent-color);
    background: var(--accent-light);
}

.detail-page .nav-tabs .nav-link.active {
    color: var(--accent-color);
    background: transparent;
    border-bottom: 3px solid var(--accent-color);
}

.detail-page .tab-content {
    border: 1px solid var(--border-color);
    border-top: none;
    padding: var(--space-xl);
    border-radius: 0 0 var(--radius-lg) var(--radius-lg);
    background: var(--bg-white);
    box-shadow: var(--shadow-sm);
}

/* 9. 错误提示优化 */
.detail-page #error_tips {
    background: linear-gradient(135deg, #ffeaa7 0%, #fab1a0 100%);
    border-left: 4px solid #e17055;
    color: #d63031;
    font-weight: 600;
    box-shadow: 0 3px 15px rgba(214, 48, 49, 0.1);
    border-radius: var(--radius-md);
    padding: var(--space-md);
    margin: var(--space-md) 0;
    animation: slideIn 0.3s ease-out;
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 10. 购买链接优化 */
.detail-page .buy-link {
    text-decoration: none;
    color: var(--info-color);
    font-weight: 600;
    transition: all var(--transition-normal);
    position: relative;
    padding-bottom: 2px;
}

.detail-page .buy-link:hover {
    color: var(--accent-color);
    text-decoration: none;
}

.detail-page .buy-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--accent-color);
    transition: width var(--transition-normal);
}

.detail-page .buy-link:hover::after {
    width: 100%;
}

/* 11. 已购买提示优化 */
.detail-page .purchased-tip {
    background: linear-gradient(135deg, var(--success-color) 0%, rgba(29, 209, 161, 0.1) 100%);
    border: 2px solid var(--success-color);
    border-radius: var(--radius-md);
    padding: var(--space-md) var(--space-lg);
    margin: var(--space-lg) 0;
    color: #0c6b50;
    font-weight: 600;
    box-shadow: 0 4px 12px rgba(29, 209, 161, 0.15);
}

.detail-page .purchased-tip i {
    margin-right: var(--space-sm);
    font-size: 20px;
    color: var(--success-color);
    animation: bounce 2s infinite;
}

@keyframes bounce {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-3px); }
}

/* 12. 面包屑导航优化 */
.detail-page .breadcrumb-container {
    padding: var(--space-md) 0;
    margin-bottom: var(--space-lg);
}

.detail-page .breadcrumb-container a {
    color: var(--text-secondary);
    font-weight: 500;
    transition: all var(--transition-normal);
    position: relative;
    padding: var(--space-xs) var(--space-sm);
    border-radius: var(--radius-sm);
}

.detail-page .breadcrumb-container a:hover {
    color: var(--accent-color);
    background: var(--accent-light);
    padding-left: var(--space-lg);
}

.detail-page .breadcrumb-container a:hover::before {
    content: '›';
    position: absolute;
    left: 6px;
    color: var(--accent-color);
    font-weight: bold;
    font-size: 18px;
}

/* 13. 模态框优化 */
.detail-page .modal-content {
    border-radius: var(--radius-lg);
    overflow: hidden;
    border: none;
    box-shadow: var(--shadow-lg);
}

.detail-page .modal-header {
    background: linear-gradient(135deg, var(--primary-color) 0%, #00c853 100%);
    color: white;
    border-bottom: none;
    padding: var(--space-lg);
}

.detail-page .modal-body {
    padding: var(--space-xl);
    line-height: 1.8;
}

.detail-page .modal-footer {
    padding: var(--space-lg);
    border-top: 1px solid var(--border-color);
    background: var(--bg-light);
}

/* ===== 响应式优化 ===== */
@media (max-width: 768px) {
    .detail-page {
        --space-xl: 20px;
        --space-lg: 16px;
        --space-md: 12px;
        --space-sm: 8px;
    }
    
    .detail-page .main-tag-badge {
        top: 8px;
        left: 8px;
        padding: 4px 12px;
        font-size: 12px;
    }
    
    .detail-page .countdown-container {
        display: block;
        margin-top: 8px;
        width: fit-content;
    }
    
    .detail-page .countdown-time {
        font-size: 14px;
        min-width: 80px;
    }
    
    .detail-page .btn {
        padding: 8px 16px;
        font-size: 14px;
    }
    
    .detail-page .descartes {
        padding: 6px 12px;
        font-size: 13px;
        margin: 2px 4px;
    }
    
    .detail-page .quantity {
        width: 130px;
        height: 36px;
    }
    
    .detail-page .quantity .minus,
    .detail-page .quantity .plus {
        width: 36px;
        font-size: 16px;
    }
    
    .detail-page .quantity .qty {
        padding: 0 40px;
        font-size: 14px;
    }
    
    .detail-page .owl-carousel .big {
        max-height: 300px;
    }
    
    .detail-page .owl-carousel .small {
        width: 60px;
        height: 60px;
    }
}

@media (max-width: 576px) {
    .detail-page .main-tag-badge {
        top: 6px;
        left: 6px;
        padding: 3px 8px;
        font-size: 11px;
    }
    
    .detail-page .nav-tabs .nav-link {
        padding: 8px 12px;
        font-size: 13px;
        flex: 1;
        text-align: center;
    }
    
    .detail-page .special-price {
        font-size: 1.3rem;
    }
    
    .detail-page .tab-content {
        padding: var(--space-md);
    }
}

/* ===== 打印样式优化 ===== */
@media print {
    .detail-page .main-tag-badge,
    .detail-page .countdown-container,
    .detail-page .btn,
    .detail-page .nav-tabs,
    .detail-page .modal-dialog {
        display: none !important;
    }
    
    .detail-page {
        --text-primary: #000;
        --text-secondary: #333;
        --border-color: #ccc;
    }
    
    .detail-page .tab-content {
        border: 1px solid var(--border-color);
        box-shadow: none;
    }
}

/* ===== 深色模式支持 ===== */
@media (prefers-color-scheme: dark) {
    .detail-page {
        --text-primary: #f8f9fa;
        --text-secondary: #e9ecef;
        --text-muted: #adb5bd;
        --border-color: #495057;
        --bg-light: #343a40;
        --bg-lighter: #212529;
        --bg-white: #121212;
    }
    
    .detail-page .tab-content {
        background: var(--bg-white);
    }
    
    .detail-page .quantity .qty {
        background: var(--bg-light);
        color: var(--text-primary);
    }
}
/* ============================================
   商品详情页样式  - 结束
   ============================================ */
/* ============================================
   文章列表页样式 - 新增
   ============================================ */

/* 文章列表卡片样式 */
.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 0.25rem;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    transition: box-shadow 0.3s ease-in-out;
}

.card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
}

/* 文章标签样式 */
.product-tag {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 20px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    background: linear-gradient(135deg, #ff7d00 0%, #ff4500 100%);
    margin-right: 5px;
    vertical-align: middle;
}

.product-tag-free {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 20px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
    margin-right: 5px;
    vertical-align: middle;
}

.countdown-tag {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 20px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    background: #dc3545;
    vertical-align: middle;
}

/* 价格样式 */
.special-price {
    color: #dc3545;
    font-weight: bold;
    font-size: 1.1rem;
}

.original-price {
    color: #6c757d;
    text-decoration: line-through;
    margin-left: 5px;
    font-size: 0.9rem;
}

/* 文章元信息 */
.list-item-meta {
    color: #6c757d;
    font-size: 0.85rem;
}

.list-item-meta i {
    width: 16px;
}

/* 文章内容行数限制 */
.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ============================================
   文章列表页样式结束
   ============================================ */

/* ============================================
   视频列表页样式 - 新增
   ============================================ */

/* 视频列表页 整体样式整合 - 按功能模块分类 */
/* 一、视频列表页筛选区域样式 */
.btn-group .btn {
    padding: 8px 18px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 20px !important;
    transition: all 0.3s ease;
    margin-right: 10px;
    border-width: 1px;
}
/* 全部视频按钮 - 轮廓主色 */
.btn-group .btn-outline-primary {
    color: #007bff;
    border-color: #007bff;
    background-color: transparent;
}
.btn-group .btn-outline-primary:hover {
    color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,123,255,0.2);
}
/* 特价视频按钮 - 轮廓危险色 */
.btn-group .btn-outline-danger {
    color: #dc3545;
    border-color: #dc3545;
    background-color: transparent;
}
.btn-group .btn-outline-danger:hover {
    color: #fff !important;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(220,53,69,0.2);
}
/* 筛选按钮激活状态（全局） */
.btn-group .btn.active {
    color: #fff !important;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    box-shadow: 0 4px 8px rgba(220,53,69,0.2);
}
.btn-group .btn.active:hover {
    opacity: 0.95 !important;
    transform: translateY(0);
}

/* 三、视频列表页各类标签样式（特价/免费/倒计时） */
/* 特价视频标签 */
.product-tag {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    background: linear-gradient(135deg, #ff7d00 0%, #ff4500 100%);
}
/* 免费视频标签 */
.product-tag-free {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
}
/* 倒计时标签 */
.countdown-tag {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 2px 8px;
    border-radius: 4px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    background: #dc3545;
}

/* 四、视频热度显示样式 */
.product-hits {
    position: absolute;
    bottom: 10px;
    right: 10px;
    padding: 2px 8px;
    border-radius: 4px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    background: #30B239;
    display: flex;
    align-items: center;
    gap: 4px;
    opacity: 0.95;
    transition: opacity 0.3s ease;
}
.product-hits i {
    font-size: 9px;
}
.product-img:hover .product-hits {
    opacity: 1;
}

/* 五、视频图片容器样式 */
.product-img {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
}
.product-img img {
    border-radius: 8px;
    transition: transform 0.3s ease;
    width: 100%;
    height: auto;
    z-index: 1;
}
/* 卡片悬浮时图片缩放 */
.single-products:hover .product-img img {
    transform: scale(1.03);
}

/* 六、视频卡片容器核心样式 */
.single-products {
    height: 100%;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    position: relative;
}
/* 卡片悬浮动效 */
.single-products:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
    border-color: #00a65a;
}

/* 七、视频卡片内容区域样式（标题/价格） */
.product-content {
    padding: 8px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
/* 价格区域定位（靠底） */
.products-price {
    margin-top: auto;
    padding-top: 5px;
}

/* 八、通用标签样式（可扩展其他类型视频） */
.main-tag-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
}
/* ============================================
   视频详情页 专属样式 - 整合版
   保留所有原样式/属性/层级，按功能模块分类规整
   ============================================ */

/* 一、核心视频播放器容器样式 */
.video-container { 
    position: relative;
    width: 100%;
    height: 500px;
    overflow: hidden;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 二、Video.js 播放器定制样式 */
/* 确保poster封面正确显示 */
.video-js .vjs-poster {
    background-size: cover !important;
    background-position: center !important;
}
/* 大播放按钮定制（圆形、红色主题） */
.vjs-big-play-button {
    width: 70px !important; 
    height: 70px !important; 
    line-height: 70px !important;
    border-radius: 50% !important; 
    font-size: 30px !important;
    background-color: rgba(255, 0, 0, 0.8) !important; 
    z-index: 101 !important;
    margin-top: -35px !important; 
    margin-left: -35px !important;
    border: none !important;
}
/* 播放器控制栏层级（高于遮罩） */
.video-js .vjs-control-bar { 
    z-index: 101 !important; 
}

/* 三、试看相关遮罩/提示样式 */
/* 试看结束遮罩层 */
.vjs-custom-overlay {
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%;
    background: rgba(0,0,0,0.7); 
    display: flex; 
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    color: white; 
    font-size: 16px; 
    z-index: 100; 
    pointer-events: none;
    padding-bottom: 15%;
    box-sizing: border-box;
}
.vjs-custom-overlay span { 
    pointer-events: auto; 
    background: rgba(0,0,0,0.5);
    padding: 10px 20px;
    border-radius: 4px;
}
/* 试看结束吐司提示 */
.vjs-trial-toast {
    position: absolute; 
    bottom: 60px; 
    left: 50%; 
    transform: translateX(-50%);
    background: rgba(255,0,0,0.9); 
    color: white; 
    padding: 8px 15px;
    border-radius: 4px; 
    z-index: 90; 
    display: none;
}

/* 四、海报加载失败替代样式 */
.poster-error-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(45deg, #1a1a1a, #2a2a2a);
    z-index: 1;
}
.poster-error-overlay h4 {
    color: #fff;
    text-shadow: 0 2px 4px rgba(0,0,0,0.5);
    padding: 20px;
    text-align: center;
}

/* 五、价格/标签专属样式（详情页特有） */
.special-price { 
    color: #dc3545; 
    font-weight: bold; 
    font-size: 18px; 
}
.original-price { 
    color: #6c757d; 
    text-decoration: line-through; 
    margin-left: 8px; 
    font-size: 14px; 
}
.special-tag {
    display: inline-block; 
    padding: 2px 8px; 
    border-radius: 4px;
    color: #fff; 
    font-size: 12px; 
    font-weight: 700;
    background: linear-gradient(135deg, #ff7d00 0%, #ff4500 100%);
    margin-right: 8px; 
    vertical-align: middle;
}

/* 六、剧集列表核心样式（高亮/滚动/导航） */
/* 列表项激活高亮 */
.video-item.active { 
    color: #dc3545 !important; 
    font-weight: bold; 
}
/* 右侧剧集列表滚动容器（核心修复） */
.video-right .video-source {
    max-height: 500px; /* 匹配播放器高度 */
    overflow-y: auto; /* 垂直滚动 */
    overflow-x: hidden; /* 隐藏水平滚动 */
    padding-right: 5px; /* 为滚动条预留空间 */
    height: 100%;
    position: relative;
    /* 性能优化 */
    will-change: transform;
    -webkit-overflow-scrolling: touch;
    /* 滚动渐变遮罩 - 初始隐藏 */
    mask-image: linear-gradient(to bottom, 
        transparent 0%, 
        black 20px, 
        black calc(100% - 20px), 
        transparent 100%
    );
    -webkit-mask-image: linear-gradient(to bottom, 
        transparent 0%, 
        black 20px, 
        black calc(100% - 20px), 
        transparent 100%
    );
}
/* 无滚动时隐藏渐变遮罩 */
.video-right .video-source.no-scroll-mask {
    mask-image: none;
    -webkit-mask-image: none;
}
/* 剧集列表项优化（防挤压/提性能） */
.video-right .video-list {
    margin-bottom: 5px;
    padding: 4px 0;
    contain: content; /* 提高渲染性能 */
    backface-visibility: hidden; /* 减少重绘 */
}
.video-right .video-item {
    display: block;
    width: 100%;
    transition: all 0.2s ease;
    outline: none; /* 为键盘导航准备，用JS处理焦点样式 */
}
/* 键盘导航焦点样式（无障碍适配） */
.video-right .video-item:focus,
#tabVideoSource .video-item:focus {
    background-color: rgba(220, 53, 69, 0.1);
    border-left: 3px solid #dc3545;
    padding-left: 8px;
}

/* 七、自定义滚动条样式（美化剧集列表） */
/* Webkit内核（Chrome/Edge/Safari） */
.video-right .video-source::-webkit-scrollbar {
    width: 6px; /* 滚动条宽度 */
}
.video-right .video-source::-webkit-scrollbar-track {
    background: #2c2c2c; /* 轨道背景（适配深色播放器） */
    border-radius: 10px;
}
.video-right .video-source::-webkit-scrollbar-thumb {
    background: #888; /* 滑块颜色 */
    border-radius: 10px;
    transition: background 0.2s ease;
}
.video-right .video-source::-webkit-scrollbar-thumb:hover {
    background: #dc3545; /* 悬停滑块（适配主题红） */
}
/* Firefox滚动条适配 */
.video-right .video-source {
    scrollbar-width: thin;
    scrollbar-color: #888 #2c2c2c;
}

/* 八、滚动提示箭头样式（可选） */
.scroll-hint {
    position: absolute;
    right: 10px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 12px;
    z-index: 1;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}
.scroll-hint.up {
    top: 5px;
}
.scroll-hint.down {
    bottom: 5px;
}
/* 滚动时显示提示箭头 */
.video-right .video-source.scrolling .scroll-hint,
#tabVideoSource.scrolling .scroll-hint {
    opacity: 0.8;
}

/* 九、全局Toast提示样式 */
.toast-notification {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0,0,0,0.85);
    color: #fff;
    padding: 10px 20px;
    border-radius: 4px;
    z-index: 9999;
    display: none;
    transition: opacity 0.3s ease;
}

/* 十、功能按钮/徽章样式 */
/* 下载按钮悬浮动效 */
.video-download-btn {
    transition: all 0.3s ease;
}
.video-download-btn:hover {
    background-color: #f8f9fa;
    color: #dc3545;
    transform: translateY(-2px);
}
/* 详情页徽章配色（主题化） */
.badge-danger { background-color: #dc3545; color: #fff; }
.badge-success { background-color: #28a745; color: #fff; }
.badge-warning { background-color: #ffc107; color: #212529; }
.badge-info { background-color: #17a2b8; color: #fff; }

/* 十一、倒计时容器样式 */
.countdown-container {
    padding: 3px 8px; 
    border-radius: 4px; 
    background-color: #fef2f2;
    vertical-align: middle; 
    display: inline-block; 
    margin-left: 8px;
}
.countdown-time { 
    letter-spacing: 1px; 
    font-size: 14px; 
    color: #FFFFFF; 
    font-weight: bold; 
}

/* 十二、视频操作区/侧边栏基础样式 */
/* 操作区深色背景 */
.alert-dark {
    background-color: #343a40 !important;
    color: #fff;
}
/* 侧边栏购买须知小字体 */
.text-sm {
    font-size: 0.875rem;
}
/* 侧边栏项目符号 */
.list-disc {
    list-style-type: disc;
}
/* 暗色背景适配（播放器/操作区） */
.bg-dark {
    background-color: #1a1a1a !important;
}

/* 十三、全局响应式适配（按屏幕尺寸分级） */
/* 大屏平板 (≤992px) */
@media (max-width: 992px) {
    .video-container {
        height: 400px;
    }
    .video-js {
        height: 400px !important;
    }
    /* 平板剧集列表滚动高度适配 */
    .video-right .video-source {
        max-height: 400px !important;
    }
}

/* 平板/小屏 (≤768px) */
@media (max-width: 768px) { 
    .video-container {
        height: 280px;
    }
    .video-js {
        height: 280px !important;
    }
    /* 移动端剧集列表滚动高度适配 */
    .video-right .video-source {
        max-height: 280px !important;
    }
    /* 隐藏移动端面包屑导航 */
    .d-none.d-sm-block {
        display: none !important;
    }
    /* 视频内容区边距重置 */
    .col-md-9.pl-sm-1.pl-4.video-right {
        padding-left: 15px !important;
        padding-right: 15px;
    }
    .video-right .video-source {
        padding-right: 10px;
    }
}

/* 手机小屏 (≤576px) */
@media (max-width: 576px) {
    /* 操作区按钮组居中（取消浮动） */
    .float-right.mt-1 {
        float: none !important;
        text-align: center;
        margin-top: 15px !important;
    }
    .float-left {
        float: none !important;
        text-align: center;
    }
    /* 下载按钮居中适配 */
    .video-download-btn {
        margin-top: 10px;
        margin-left: 0 !important;
        display: inline-block;
    }
}

/* ============================================
   视频详情页样式结束
   ============================================ */
/* ============================================
   项目列表页样式 - 合并到全局CSS
   ============================================ */

/* 筛选区域整体样式 */
.btn-group .btn {
    padding: 8px 18px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 20px !important;
    transition: all 0.3s ease;
    margin-right: 10px;
    border-width: 1px;
}

.btn-group .btn-outline-primary {
    color: #007bff;
    border-color: #007bff;
    background-color: transparent;
}

.btn-group .btn-outline-primary:hover {
    color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,123,255,0.2);
}

.btn-group .btn-outline-success {
    color: #28a745;
    border-color: #28a745;
    background-color: transparent;
}

.btn-group .btn-outline-success:hover {
    color: #fff !important;
    background-color: #28a745 !important;
    border-color: #28a745 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(40,167,69,0.2);
}

.btn-group .btn-outline-warning {
    color: #ffc107;
    border-color: #ffc107;
    background-color: transparent;
}

.btn-group .btn-outline-warning:hover {
    color: #fff !important;
    background-color: #ffc107 !important;
    border-color: #ffc107 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(255,193,7,0.2);
}

.btn-group .btn-outline-info {
    color: #17a2b8;
    border-color: #17a2b8;
    background-color: transparent;
}

.btn-group .btn-outline-info:hover {
    color: #fff !important;
    background-color: #17a2b8 !important;
    border-color: #17a2b8 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(23,162,184,0.2);
}

.btn-group .btn.active {
    color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
    box-shadow: 0 4px 8px rgba(0,123,255,0.2);
}

.btn-group .btn.active:hover {
    opacity: 0.95 !important;
    transform: translateY(0);
}

/* 项目标签样式 */
.project-tag {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
}

.project-tag.status-progress {
    background: linear-gradient(135deg, #ffc107 0%, #ff9800 100%);
}

.project-tag.status-completed {
    background: linear-gradient(135deg, #28a745 0%, #1e7e34 100%);
}

.project-tag.status-planning {
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
}

.project-tag.status-suspended {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
}

/* 项目进度标签 */
.project-progress-tag {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 2px 8px;
    border-radius: 4px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    background: rgba(0,0,0,0.6);
    backdrop-filter: blur(5px);
}

/* 项目卡片等高布局 - 重要修复 */
.row {
    display: flex;
    flex-wrap: wrap;
}

/* 项目卡片容器 */
.col-xl-4, .col-lg-4, .col-md-6, .col-sm-6, .col-12 {
    display: flex;
    margin-bottom: 30px;
}

/* 项目卡片内部链接 */
.col-xl-4 a, .col-lg-4 a, .col-md-6 a, .col-sm-6 a, .col-12 a {
    display: flex;
    width: 100%;
    text-decoration: none;
    color: inherit;
}

/* 项目卡片布局 */
.single-projects {
    height: 100%;
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    transition: all 0.3s ease;
    width: 100%;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
}

.single-projects:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.1) !important;
}

/* 项目图片区域 */
.project-img {
    position: relative;
    overflow: hidden;
    border-radius: 8px 8px 0 0;
    height: 180px; /* 固定高度 */
    flex-shrink: 0;
}

.project-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.single-projects:hover .project-img img {
    transform: scale(1.05);
}

/* 项目内容区域 */
.project-content {
    padding: 15px;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* 项目标题 */
.project-title {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 44px;
}

/* 点击次数 */
.project-hits {
    margin-bottom: 15px;
    text-align: center;
}

.hits-count {
    color: #666;
    font-size: 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fa;
    padding: 4px 12px;
    border-radius: 20px;
    border: 1px solid #e9ecef;
}

.hits-count i {
    margin-right: 5px;
    color: #ff6b6b;
}

/* 项目进度条 */
.project-progress-bar {
    margin-top: auto;
}

.progress {
    height: 6px;
    border-radius: 3px;
    background-color: #f0f0f0;
    overflow: hidden;
}

.progress-bar {
    border-radius: 3px;
    transition: width 0.5s ease;
}

.progress-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 5px;
    font-size: 12px;
    color: #666;
}

.progress-percent {
    font-weight: 600;
    color: #007bff;
}

/* 进度条颜色 */
.progress-bar.bg-success {
    background: linear-gradient(90deg, #28a745, #20c997);
}

.progress-bar.bg-warning {
    background: linear-gradient(90deg, #ffc107, #ff9800);
}

.progress-bar.bg-info {
    background: linear-gradient(90deg, #17a2b8, #0dcaf0);
}

.progress-bar.bg-secondary {
    background: linear-gradient(90deg, #6c757d, #495057);
}

/* 空状态 */
.project-empty-state {
    text-align: center;
    padding: 60px 20px;
    color: #6c757d;
    width: 100%;
}

.project-empty-state i {
    font-size: 48px;
    margin-bottom: 15px;
    color: #dee2e6;
}

.project-empty-state h5 {
    font-weight: 400;
    margin-bottom: 10px;
}

/* 统计卡片 */
.project-stats-card {
    border: none;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
    margin-bottom: 20px;
}

.project-stats-card .card-header {
    background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
    border: none;
    color: white;
    font-weight: 600;
}

.project-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    text-align: center;
}

.stat-item {
    padding: 10px 5px;
}

.stat-value {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 5px;
}

.stat-label {
    font-size: 12px;
    color: #6c757d;
}

.stat-value.total { color: #007bff; }
.stat-value.progress { color: #ffc107; }
.stat-value.completed { color: #28a745; }

/* 信息行样式 */
.project-info-row {
    margin-top: 8px;
}

/* 状态徽章颜色 */
.badge-secondary {
    background: linear-gradient(135deg, #6c757d, #495057);
    color: white;
}

.badge-primary {
    background: linear-gradient(135deg, #007bff, #0056b3);
    color: white;
}

.badge-success {
    background: linear-gradient(135deg, #28a745, #1e7e34);
    color: white;
}

.badge-info {
    background: linear-gradient(135deg, #17a2b8, #0dcaf0);
    color: white;
}

.badge-warning {
    background: linear-gradient(135deg, #ffc107, #ff9800);
    color: #000;
}

.badge-danger {
    background: linear-gradient(135deg, #dc3545, #c82333);
    color: white;
}

/* 图片状态标签 */
.project-tag.status-0 { 
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%); 
}

.project-tag.status-1 { 
    background: linear-gradient(135deg, #ffc107 0%, #ff9800 100%); 
}

.project-tag.status-2 { 
    background: linear-gradient(135deg, #28a745 0%, #1e7e34 100%); 
}

.project-tag.status-3 { 
    background: linear-gradient(135deg, #17a2b8 0%, #0dcaf0 100%); 
}

.project-tag.status-4 { 
    background: linear-gradient(135deg, #fd7e14 0%, #e8590c 100%); 
}

.project-tag.status-5 { 
    background: linear-gradient(135deg, #6f42c1 0%, #6610f2 100%); 
}

.project-tag.status-6 { 
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%); 
}

/* 移动端适配 */
@media (max-width: 768px) {
    .col-sm-6, .col-12 {
        margin-bottom: 20px;
    }
    
    .project-img {
        height: 160px;
    }
    
    .project-title {
        font-size: 15px;
        min-height: 42px;
    }
    
    .stat-value {
        font-size: 20px;
    }
    
    .project-stats-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 10px;
    }
}

@media (max-width: 576px) {
    .project-img {
        height: 140px;
    }
    
    .project-title {
        font-size: 14px;
        min-height: 40px;
    }
    
    .btn-group .btn {
        padding: 6px 12px;
        font-size: 13px;
        margin-right: 5px;
        margin-bottom: 5px;
    }
    
    
    .stat-value {
        font-size: 18px;
    }
    
    .project-stats-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }
}

/* ============================================
   项目列表页样式结束
   ============================================ */
/* ============================================
   项目详情页样式 - 合并到全局CSS
   ============================================ */

/* 整体布局 */
.project-detail-vertical {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

/* 图片区域 */
.image-section-vertical {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    margin-bottom: 5px;
    background: #f8f9fa;
}

.main-image-vertical {
    width: 100%;
    height: 600px;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.main-image-vertical:hover {
    transform: scale(1.03);
}

/* 状态标签 */
.status-overlay-vertical {
    position: absolute;
    top: 20px;
    left: 20px;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    color: white;
    z-index: 10;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    display: flex;
    align-items: center;
}

/* 缩略图区域 */
.thumbnail-section-vertical {
    margin-top: 15px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 8px;
}

.thumbnail-container-vertical {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    padding: 5px;
    scrollbar-width: thin;
    scrollbar-color: #007bff #f1f1f1;
}

.thumbnail-container-vertical::-webkit-scrollbar {
    height: 6px;
}

.thumbnail-container-vertical::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}

.thumbnail-container-vertical::-webkit-scrollbar-thumb {
    background: #007bff;
    border-radius: 3px;
}

.thumbnail-item-vertical {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 6px;
    overflow: hidden;
    cursor: pointer;
    border: 3px solid transparent;
    opacity: 0.7;
    transition: all 0.3s ease;
}

.thumbnail-item-vertical:hover,
.thumbnail-item-vertical.active {
    border-color: #007bff;
    opacity: 1;
    transform: translateY(-3px);
    box-shadow: 0 4px 8px rgba(0,123,255,0.3);
}

.thumbnail-item-vertical img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 信息区域 */
.info-section-vertical {
    background: white;
    border-radius: 10px;
    padding: 30px;
    box-shadow: 0 3px 15px rgba(0,0,0,0.08);
    margin-top: 10px;
}

.project-title-vertical {
    font-size: 24px;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
    line-height: 1.3;
    border-bottom: 2px solid #007bff;
    padding-bottom: 15px;
}

.project-description-vertical {
    color: #666;
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 25px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #007bff;
}

/* 信息网格布局 - 2行4列 */
.info-grid-vertical {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    margin-bottom: 30px;
}

.info-card-vertical {
    background: white;
    border-radius: 8px;
    padding: 12px;
    border: 1px solid #e9ecef;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    min-height: 70px;
}

.info-card-vertical:hover {
    border-color: #007bff;
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0,123,255,0.1);
}

.info-icon-vertical {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    flex-shrink: 0;
}

.info-icon-vertical i {
    font-size: 18px;
    color: white;
}

.info-content-vertical {
    flex: 1;
    min-width: 0;
}

.info-label-vertical {
    font-size: 11px;
    color: #6c757d;
    margin-bottom: 4px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.info-value-vertical {
    font-size: 14px;
    font-weight: 600;
    color: #343a40;
    line-height: 1.4;
}

/* 地址特殊处理 */
.location-value {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    cursor: help;
}

/* 进度条区域 */
.progress-section-vertical {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 12px;
    padding: 25px;
    margin: 25px 0;
    border: 1px solid #dee2e6;
}

.progress-header-vertical {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.progress-title-vertical {
    font-weight: 600;
    color: #333;
    font-size: 18px;
    display: flex;
    align-items: center;
}

.progress-title-vertical i {
    margin-right: 10px;
    color: #28a745;
}

.progress-percent-vertical {
    font-weight: 700;
    font-size: 24px;
    color: #28a745;
}

.progress-bar-wrapper-vertical {
    height: 14px;
    background: #dee2e6;
    border-radius: 7px;
    overflow: hidden;
    margin-bottom: 15px;
    position: relative;
}

.progress-fill-vertical {
    height: 100%;
    background: linear-gradient(90deg, #28a745, #20c997);
    border-radius: 7px;
    transition: width 1.5s ease;
    position: relative;
    overflow: hidden;
}

.progress-fill-vertical::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, 
        rgba(255,255,255,0) 0%, 
        rgba(255,255,255,0.3) 50%, 
        rgba(255,255,255,0) 100%);
    background-size: 200% 100%;
    animation: progress-shimmer 2s infinite linear;
}

@keyframes progress-shimmer {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

/* 分享区域 */
.share-section {
    border-top: 1px solid #e9ecef;
    padding-top: 25px;
    margin-top: 25px;
}

/* 内容区域 */
.content-section {
    background: white;
    border-radius: 10px;
    padding: 25px;
    margin-top: 20px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

/* 上一篇/下一篇导航 */
.page-navigation {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #e9ecef;
}

/* 项目详情页状态颜色定义 */
.status-0 { background: #6c757d; }
.status-1 { background: #ffc107; }
.status-2 { background: #28a745; }
.status-3 { background: #17a2b8; }
.status-4 { background: #fd7e14; }
.status-5 { background: #6f42c1; }
.status-6 { background: #dc3545; }

.badge.status-0 { background: #6c757d; }
.badge.status-1 { background: #ffc107; color: #000; }
.badge.status-2 { background: #28a745; }
.badge.status-3 { background: #17a2b8; }
.badge.status-4 { background: #fd7e14; }
.badge.status-5 { background: #6f42c1; }
.badge.status-6 { background: #dc3545; }

/* 项目详情页图标背景色定义 */
.icon-bg-primary { background: linear-gradient(135deg, #007bff 0%, #0056b3 100%); }
.icon-bg-success { background: linear-gradient(135deg, #28a745 0%, #1e7e34 100%); }
.icon-bg-warning { background: linear-gradient(135deg, #ffc107 0%, #ff9800 100%); }
.icon-bg-secondary { background: linear-gradient(135deg, #6c757d 0%, #495057 100%); }
.icon-bg-purple { background: linear-gradient(135deg, #6f42c1 0%, #6610f2 100%); }
.icon-bg-orange { background: linear-gradient(135deg, #fd7e14 0%, #e8590c 100%); }
.icon-bg-info { background: linear-gradient(135deg, #17a2b8 0%, #0dcaf0 100%); }
.icon-bg-danger { background: linear-gradient(135deg, #dc3545 0%, #c82333 100%); }

/* 响应式调整 */
@media (max-width: 1200px) {
    .info-grid-vertical {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 992px) {
    .main-image-vertical {
        height: 350px;
    }
    
    .project-title-vertical {
        font-size: 22px;
    }
}

@media (max-width: 768px) {
    .main-image-vertical {
        height: 300px;
    }
    
    .info-grid-vertical {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    
    .info-section-vertical {
        padding: 20px;
    }
    
    .project-title-vertical {
        font-size: 20px;
        padding-bottom: 12px;
        margin-bottom: 12px;
    }
    
    .project-description-vertical {
        padding: 12px;
        margin-bottom: 20px;
    }
    
    .progress-section-vertical {
        padding: 20px;
        margin: 20px 0;
    }
    
    .thumbnail-item-vertical {
        width: 70px;
        height: 70px;
    }
    
    .progress-percent-vertical {
        font-size: 20px;
    }
}

@media (max-width: 576px) {
    .project-detail-vertical {
        gap: 20px;
    }
    
    .main-image-vertical {
        height: 250px;
    }
    
    .project-title-vertical {
        font-size: 18px;
    }
    
    .info-icon-vertical {
        width: 36px;
        height: 36px;
    }
    
    .info-icon-vertical i {
        font-size: 16px;
    }
    
    .info-value-vertical {
        font-size: 13px;
    }
    
    .progress-title-vertical {
        font-size: 16px;
    }
    
    .progress-bar-wrapper-vertical {
        height: 12px;
    }
    
    .thumbnail-item-vertical {
        width: 60px;
        height: 60px;
    }
    
    .page-navigation {
        flex-direction: column;
        gap: 15px;
    }
}

/* 移动端优化 */
@media (max-width: 480px) {
    .main-image-vertical {
        height: 200px;
    }
    
    .info-card-vertical {
        padding: 10px;
    }
    
    .thumbnail-container-vertical {
        gap: 8px;
    }
    
    .thumbnail-item-vertical {
        width: 50px;
        height: 50px;
        border-width: 2px;
    }
    
    .project-title-vertical {
        font-size: 16px;
        border-bottom-width: 1px;
    }
}

/* 平板横屏适配 */
@media (min-width: 769px) and (max-width: 1024px) and (orientation: landscape) {
    .info-grid-vertical {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* 避免与全局样式冲突 */
.project-detail-vertical .badge {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 4px;
    font-weight: 600;
}

/* 确保详情页图片加载备用样式 */
.main-image-vertical[src*="nopic.png"] {
    background: #f5f5f5;
    object-fit: contain !important;
    padding: 30px;
}

/* 滚动条美化 */
.thumbnail-container-vertical::-webkit-scrollbar-thumb:hover {
    background: #0056b3;
}

/* 打印样式 */
@media print {
    .project-detail-vertical {
        gap: 15px;
    }
    
    .status-overlay-vertical,
    .thumbnail-section-vertical,
    .share-section {
        display: none;
    }
    
    .main-image-vertical {
        height: auto;
        max-height: 300px;
    }
    
    .info-card-vertical {
        break-inside: avoid;
        box-shadow: none;
        border: 1px solid #ddd;
    }
    
    .info-grid-vertical {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
}

/* ============================================
   项目详情页样式结束
   ============================================ */
/* ============================================
   下载列表页样式 - 合并到全局CSS
   ============================================ */

/* 软件信息标签样式 */
.software-badge {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    margin-right: 5px;
    margin-bottom: 3px;
}

.software-type-badge {
    background: linear-gradient(135deg, #6a11cb 0%, #2575fc 100%);
    color: white;
}

.software-platform-badge {
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
    color: white;
}

.software-language-badge {
    background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
    color: white;
}

.software-license-badge {
    background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
    color: white;
}

.software-architecture-badge {
    background: linear-gradient(135deg, #fa709a 0%, #fee140 100%);
    color: white;
}

.software-portable-badge {
    background: linear-gradient(135deg, #30cfd0 0%, #330867 100%);
    color: white;
}

/* 评分样式 */
.software-rating {
    color: #ffc107;
    font-size: 14px;
}

.rating-number {
    color: #666;
    font-size: 13px;
    font-weight: 600;
    margin-left: 5px;
}

/* 软件规格信息 */
.software-specs {
    font-size: 13px;
    color: #666;
}

.software-specs span {
    margin-right: 10px;
    display: inline-block;
}

.software-specs i {
    color: #999;
    margin-right: 3px;
}

/* 卡片底部信息 */
.card-footer-info {
    border-top: 1px solid #eee;
    padding-top: 10px;
    margin-top: 10px;
    font-size: 12px;
}

/* 列表项间距优化 */
.list-item {
    margin-bottom: 15px;
}

/* ========== 卡片内图文环绕样式 ========== */
/* 图片浮动样式（核心：实现文字环绕） */
.card-img-wrap {
    float: left;
    width: 35%; /* 图片宽度，可调整 */
    margin-right: 15px; /* 图片右侧间距 */
    margin-bottom: 10px; /* 图片底部间距 */
}

.card-img-wrap img {
    max-height: 180px;
    object-fit: cover;
    border-radius: 0.5rem;
    width: 100%;
}

/* 清除浮动，避免卡片高度塌陷 */
.card-content-wrap::after {
    content: "";
    display: table;
    clear: both;
}

/* 卡片内部分区样式 */
.card-content-wrap {
    display: block;
    width: 100%;
}

/* 卡片标题优化 */
.card-content-wrap .card-title {
    font-size: 1rem;
    margin-bottom: 12px;
    line-height: 1.4;
}

/* 标签容器优化 */
.card-content-wrap .mb-2 {
    margin-bottom: 10px;
}

/* 描述区域优化 */
.card-content-wrap .card-text {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-bottom: 10px;
    color: #666;
}

/* 价格区域优化 */
.card-content-wrap .special-price {
    font-size: 1.1rem;
    font-weight: bold;
    color: #dc3545;
}

.card-content-wrap .original-price {
    color: #6c757d;
    text-decoration: line-through;
    margin-left: 5px;
    font-size: 0.9rem;
}

/* 底部信息区域优化 */
.card-content-wrap .list-item-meta {
    color: #6c757d;
    font-size: 0.85rem;
}

.card-content-wrap .list-item-meta i {
    width: 16px;
    margin-right: 3px;
}

/* 响应式：移动端取消浮动，图片占满宽度 */
@media (max-width: 768px) {
    .card-img-wrap {
        float: none;
        width: 100%;
        margin-right: 0;
        margin-bottom: 15px;
    }
    
    .software-badge {
        font-size: 11px;
        padding: 2px 6px;
        margin-bottom: 2px;
        margin-right: 3px;
    }
    
    .software-specs {
        font-size: 12px;
    }
    
    .software-specs span {
        margin-right: 8px;
        margin-bottom: 3px;
    }
    
    .card-content-wrap .card-title {
        font-size: 0.95rem;
        margin-bottom: 10px;
    }
    
    .card-content-wrap .card-text {
        font-size: 0.85rem;
    }
    
    .rating-number {
        font-size: 12px;
    }
    
    .card-footer-info {
        padding-top: 8px;
        margin-top: 8px;
        font-size: 11px;
    }
}

/* 更小屏幕优化 */
@media (max-width: 576px) {
    .software-badge {
        font-size: 10px;
        padding: 1px 4px;
        margin-right: 2px;
        margin-bottom: 1px;
    }
    
    .software-specs {
        font-size: 11px;
    }
    
    .software-specs span {
        margin-right: 6px;
        margin-bottom: 2px;
        display: inline-block;
    }
    
    .software-rating {
        font-size: 12px;
    }
    
    .rating-number {
        font-size: 11px;
        margin-left: 3px;
    }
    
    .card-img-wrap img {
        max-height: 150px;
    }
    
    .list-item {
        margin-bottom: 12px;
    }
}

/* 平板横屏适配 */
@media (min-width: 769px) and (max-width: 1024px) and (orientation: landscape) {
    .card-img-wrap {
        width: 40%; /* 横屏时图片稍大 */
    }
    
    .card-content-wrap .card-title {
        font-size: 1.05rem;
    }
}

/* 大屏桌面优化 */
@media (min-width: 1200px) {
    .card-img-wrap {
        width: 30%; /* 大屏幕图片稍小 */
    }
    
    .card-content-wrap .card-title {
        font-size: 1.1rem;
        margin-bottom: 15px;
    }
    
    .card-content-wrap .card-text {
        font-size: 0.95rem;
        line-height: 1.6;
    }
    
    .software-badge {
        padding: 4px 10px;
        margin-right: 8px;
        margin-bottom: 5px;
    }
    
    .software-specs {
        font-size: 14px;
    }
}

/* 打印样式 */
@media print {
    .card-img-wrap {
        float: none;
        width: 50%;
        margin: 0 auto 15px auto;
        display: block;
    }
    
    .software-badge {
        border: 1px solid #333;
        background: none !important;
        color: #000 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    
    .card-footer-info {
        border-top: 1px solid #ccc;
    }
}

/* 夜间模式适配 */
@media (prefers-color-scheme: dark) {
    .card-content-wrap .card-text {
        color: #aaa;
    }
    
    .software-specs {
        color: #aaa;
    }
    
    .software-specs i {
        color: #888;
    }
    
    .rating-number {
        color: #aaa;
    }
    
    .card-footer-info {
        border-top-color: #444;
    }
    
    .card-content-wrap .list-item-meta {
        color: #aaa;
    }
}

/* 无障碍优化 */
.software-badge:focus,
.card-img-wrap img:focus,
.card-content-wrap .card-title a:focus {
    outline: 2px solid #007bff;
    outline-offset: 2px;
}

/* 高对比度模式 */
@media (prefers-contrast: high) {
    .software-badge {
        border: 2px solid #000;
    }
    
    .card-footer-info {
        border-top-width: 2px;
    }
}

/* ============================================
   下载列表页样式结束
   ============================================ */
/* ============================================
   全局样式开始 - global.css（完整合并优化版）
   ============================================ */
@charset "utf-8";

/* 基础重置 */
html {
    overflow-x: hidden;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    scroll-behavior: smooth;
}

html.safari .body {
    overflow-x: hidden;
}

body {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: #333;
    font-family: Arial, "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 链接样式 */
a {
    text-decoration: none;
    color: #333;
    transition: color 0.3s ease;
}

a:hover {
    color: #00a65a;
    text-decoration: none;
}

/* 列表重置 */
ul, li {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* 容器宽度设置 - 重要！你的自定义设置 */
@media (min-width: 1200px) {
    .container {
        max-width: 1600px !important; /* 你自定义的大屏幕宽度 */
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .container {
        max-width: 1140px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .container {
        max-width: 960px !important;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .container {
        max-width: 720px !important;
    }
}

/* 工具类 */
.cursor {
    cursor: pointer;
}

.btn.disabled {
    cursor: not-allowed;
}

.detail {
    overflow: hidden;
}

.detail img {
    max-width: 100%;
    height: auto;
}

.hidden {
    display: none;
}

.wrap {
    word-break: break-all;
    word-wrap: break-word;
}

/* 文本溢出 */
.ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.line-1 {
    -webkit-line-clamp: 1;
}

.line-2 {
    -webkit-line-clamp: 2;
}

.line-3 {
    -webkit-line-clamp: 3;
}

/* 按钮样式 */
.btn-color {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn-color:hover {
    color: #fff;
    background-color: #5a6268;
    border-color: #545b62;
}

/* 最大高度限制 */
.max-height-70 {
    max-height: 70px;
    overflow: hidden;
}

.max-height-100 {
    max-height: 100px;
    overflow: hidden;
}

/* 边框样式 */
.border-gray {
    border-color: #ccc !important;
}

.border-gray:hover {
    border-color: #dc3545 !important;
}

/* 输入框 */
.input {
    border-radius: 4px;
    font-size: 14px;
    line-height: 1.6;
    height: 40px;
    padding: 8px 12px;
    border: 1px solid #ccc;
    transition: border-color 0.3s ease;
}

.input:focus {
    border-color: #00a65a;
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(0, 166, 90, 0.25);
}

.input-sm {
    height: 36px !important;
    font-size: 13px;
    padding: 6px 10px;
}

/* 背景透明度 */
.bg-opacity {
    background: rgba(0, 0, 0, 0.6);
}

.choosebg {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 0;
    height: 0;
    border-bottom: 18px solid #dc3545;
    border-left: 18px solid transparent;
}

.choose {
    position: absolute;
    bottom: -1px;
    right: -1px;
    color: #fff;
    font-size: 12px;
}

/* 模态框 */
#modal_sm {
    z-index: 1100;
    top: 150px;
}

.datepicker {
    font-size: 0.85rem;
}

/* 规格选择 */
[data-prime].disabled {
    background: #f4f4f4;
    color: #444;
    border-color: #ddd;
    cursor: not-allowed;
    opacity: 0.65;
}

[data-prime].active {
    background: #00a65a;
    color: #fff;
    border-color: #00a65a;
}

[data-prime].active:after {
    content: "\f058";
    margin-left: 0.2rem;
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
}

/* 数量增减 */
.quantity {
    position: relative;
    width: 140px;
    height: 36px;
}

.quantity .minus,
.quantity .plus {
    background: transparent;
    color: #5e5e5e;
    position: absolute;
    border: 1px solid #ddd;
    height: 36px;
    width: 40px;
    outline: 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.quantity .minus {
    border-radius: 4px 0 0 4px;
    left: 0;
}

.quantity .plus {
    border-radius: 0 4px 4px 0;
    right: 0;
}

.quantity .minus:hover,
.quantity .plus:hover {
    background: #f8f9fa;
    border-color: #00a65a;
    color: #00a65a;
}

.quantity .qty {
    text-align: center;
    width: 100%;
    font-size: 14px;
    border-radius: 4px;
    height: 36px;
    outline: 0;
    border: 1px solid #ddd;
    padding: 0 45px;
    box-sizing: border-box;
}

/* 购物车 */
.mini-cart {
    display: flex;
    position: relative;
}

.mini-cart .mini-cart-content {
    position: absolute;
    width: 320px;
    top: 100%;
    right: 0;
    padding-top: 1.6rem;
    opacity: 0;
    visibility: hidden;
    z-index: 1050;
    transform: translate3d(0, 20px, 0);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
}

.mini-cart .mini-cart-content .inner-wrapper {
    position: relative;
    box-shadow: 0 10px 30px -8px rgba(0, 0, 0, 0.15);
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
}

.mini-cart .mini-cart-content .inner-wrapper:before {
    content: '';
    display: block;
    position: absolute;
    top: -10px;
    right: 30px;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fff;
}

.mini-cart .mini-cart-content .product-image {
    position: relative;
}

.mini-cart .mini-cart-content .product-image > a {
    position: absolute;
    top: -7px;
    right: -7px;
    width: 1.2rem;
    height: 1.2rem;
    text-align: center;
    vertical-align: middle;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    background: #fff;
    border-radius: 50%;
    color: #dc3545;
}

.mini-cart .mini-cart-content .mini-cart-total {
    padding: 15px;
    border-top: 1px solid #eee;
    background: #f9f9f9;
}

.mini-cart:hover .mini-cart-content {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
}

/* 购物车滚动条 */
.scrollbar {
    transition: all 0.3s ease;
}

.scrollbar .scroll {
    padding-left: .25rem;
    padding-right: .25rem;
    overflow-y: auto;
    max-height: 270px;
}

.scroll::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    border-radius: 5px;
    background-color: #F5F5F5;
}

.scroll::-webkit-scrollbar {
    width: 8px;
    height: 0;
}

.scroll::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background-color: #393939;
}

/* Bootstrap重置 */
.nav > li:hover .dropdown-menu {
    display: block;
}

h5, .h5 {
    font-size: 1.25rem;
    margin-bottom: 0.75rem;
}

.weui-dialog,
.modal-content {
    border: 4px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
}

.btn-danger {
    color: #fff;
    background-color: #ff500b;
    border-color: #ff500b;
}

.btn-rounded {
    border-radius: 50px;
}

h6, .h6 {
    font-size: 1rem;
}

.h7 {
    font-size: 0.875rem;
}

.form-control {
    font-size: 14px;
}

.btn-sm {
    font-size: 0.875rem;
    padding: 0.25rem 0.75rem;
}

.table-striped tbody tr:nth-of-type(odd) {
    background: #f8f9fa !important;
}

.table-hover tbody tr:hover {
    background: #f8f9fa !important;
}

.table td,
.table th {
    padding: 0.75rem;
    vertical-align: middle;
}

.btn {
    font-size: 14px;
}

.btn-sm {
    font-size: 12px;
}

.form-control-sm {
    padding: 1rem .5rem;
}

/* WeUI重置 */
.weui-dialog__title,
.weui-dialog__ft {
    font-size: 15px;
}

.weui-toast {
    width: auto !important;
    min-height: auto !important;
    padding: 1rem;
    border-radius: 8px;
}

.weui-mask,
.weui-mask_transparent {
    z-index: 1201 !important;
}

.weui-mask {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.weui-mask.weui-mask--visible {
    opacity: 1;
    visibility: visible;
}

.weui-dialog.weui-dialog--visible,
.weui-toast.weui-dialog--visible,
.weui-dialog.weui-toast--visible,
.weui-toast.weui-toast--visible {
    opacity: 1;
    visibility: visible;
}

.weui-dialog,
.weui-toast {
    visibility: hidden;
    margin: 0;
    top: 45%;
    z-index: 2000;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
}

.weui-dialog {
    max-width: 350px;
    background-clip: padding-box;
}

.modal-header {
    padding: 1rem;
    background: #f3f3f3;
    border-bottom: 1px solid #dee2e6;
    border-radius: 8px 8px 0 0;
}

.modal-header .close {
    padding: 0;
    margin: 0;
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

.modal-header .close:hover {
    opacity: 1;
}

.modal {
    top: 100px;
}

/* 主题样式 */
.page-right {
    padding: 25px 20px;
    border: 1px solid #eee;
    border-top: 3px solid #00a65a;
    border-radius: 8px;
    margin-bottom: 30px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.divider {
    border: 0;
    height: 1px;
    margin: 22.5px auto;
    background-image: linear-gradient(to right, transparent, #dbdbdb, transparent);
    text-align: center;
    position: relative;
    clear: both;
}

.divider .fa {
    text-align: center;
    background: #fff;
    border-radius: 50%;
    color: #a9a9a9;
    display: inline-block;
    height: 45px;
    line-height: 45px;
    position: absolute;
    width: 45px;
    font-size: 20px;
    margin: 0 auto;
    top: -22.5px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    border: 1px solid #eee;
}

.news .date {
    float: left;
    margin-right: 15px;
    text-align: center;
}

.news .date .month {
    background: #00a65a;
    color: white;
    border-radius: 0 0 4px 4px;
    font-size: 12px;
    padding: 4px 10px;
    text-transform: uppercase;
}

.news .date .day {
    background: #f8f9fa;
    display: block;
    font-size: 18px;
    font-weight: 600;
    padding: 10px;
    border-radius: 4px 4px 0 0;
    border: 1px solid #eee;
}

.news p {
    color: #6c757d;
    margin: 0 0 0.5rem 78px;
    line-height: 1.6;
}

.news article > hr {
    margin: 0 0 1rem 78px;
    border-color: #eee;
}

/* 首页样式 */
.big_title {
    font-size: 24px;
    color: #FF500B;
}

.sub_title {
    font-size: 24px;
    color: #666;
    line-height: 140%;
    text-transform: uppercase;
}

.index_txt {
    font-size: 14px;
    color: #000;
    line-height: 230%;
}

.img_border {
    border: 1px solid #eee!important;
}

.img_border:hover {
    border: 1px solid #FF500B!important;
}

.rem-13 {
    font-size: 1.3rem;
}

/* 备案图标 */
.beian {
    display: inline-block;
    width: 103px;
    height: 32px;
    margin: 0px 3px;
}

/* 折叠伸缩 */
aside h6 {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 1rem;
    color: #333;
}











/* 选项卡 */
.nav-tabs {
    border-bottom: 2px solid #dee2e6;
}

.nav-tabs li .nav-link {
    background: #f7f7f7;
    border: 1px solid #ddd;
    border-bottom: none;
    margin-right: 5px;
    border-radius: 4px 4px 0 0;
    padding: 10px 20px;
    color: #666;
    transition: all 0.3s ease;
}

.nav-tabs li.active .nav-link {
    background: #fff;
    border-color: #ddd;
    border-bottom-color: transparent;
    color: #00a65a;
    border-top: 3px solid #00a65a;
    margin-top: -2px;
}

.tab-content {
    border-radius: 0 0 4px 4px;
    box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.04);
    background-color: #fff;
    border: 1px solid #ddd;
    border-top: 0;
    padding: 20px;
}

/* 内容框 */
.featured-box {
    background: #fff;
    box-sizing: border-box;
    border-radius: 8px;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    margin-bottom: 30px;
    position: relative;
    text-align: center;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.featured-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}

.featured-box .box-content {
    border-radius: 8px;
    border-top: 3px solid #00a65a;
    padding: 25px;
    position: relative;
}

/* 评论 */
ul.comments {
    padding: 0;
}

ul.comments li {
    clear: both;
    padding: 20px 0 0 75px;
    position: relative;
    margin-bottom: 30px;
}

ul.comments li img.avatar {
    height: 50px;
    width: 50px;
    border-radius: 50%;
    object-fit: cover;
}

ul.comments li .img-thumbnail {
    margin-left: -75px;
    position: absolute;
    top: 20px;
    left: 0;
    border: 2px solid #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

ul.comments li .comment {
    margin-bottom: 15px;
}

ul.comments .comment-arrow {
    border-bottom: 12px solid transparent;
    border-right: 12px solid #f7f7f7;
    border-top: 12px solid transparent;
    height: 0;
    left: -12px;
    position: absolute;
    top: 25px;
    width: 0;
}

ul.comments .comment-block {
    background: #f7f7f7;
    border-radius: 8px;
    padding: 20px;
    position: relative;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

ul.comments .comment-block p {
    margin: 0 0 10px;
    line-height: 1.6;
}

ul.comments .comment-block p:last-child {
    margin-bottom: 0;
}

ul.comments .comment-block p > img {
    max-width: 100%;
    border-radius: 4px;
}

/* 展开伸缩 */
.toggle {
    margin: 0 0 20px;
    position: relative;
    clear: both;
}

.toggle > label {
    transition: all 0.3s ease;
    background: #f7f7f7;
    border-left: 4px solid #00a65a;
    border-radius: 6px;
    display: block;
    padding: 15px 20px 15px 15px;
    position: relative;
    cursor: pointer;
    font-weight: 500;
    color: #333;
}

.toggle > label:before {
    content: " ";
    position: absolute;
    top: calc(50% + 1px);
    right: 15px;
    border-color: #666;
    border-top: 2px solid;
    border-right: 2px solid;
    width: 10px;
    height: 10px;
    transform: rotate(45deg) translateY(-50%);
    transform-origin: center;
    transition: transform 0.3s ease;
}

.toggle > .toggle-content {
    display: none;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 0 0 6px 6px;
    border: 1px solid #eee;
    border-top: none;
}

.toggle > .toggle-content > p {
    margin-bottom: 0;
    line-height: 1.6;
}

.toggle.active > label {
    background: #f0f9f4;
    border-color: #00a65a;
    border-radius: 6px 6px 0 0;
}

.toggle.active > label:before {
    transform: rotate(135deg) translateY(-50%);
    top: calc(50% - 5px);
}

/* Banner */
.carousel-item {
    height: 500px;
    background-color: #777;
    overflow: hidden;
}

.carousel-item > img {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 768px) {
    .carousel-item {
        height: 300px;
    }
}

/* 底部 */
#footer {
    background: #1a1a1a;
    border-top: 4px solid #00a65a;
    color: #aaa;
    margin-top: 80px;
    padding: 60px 0 0;
    position: relative;
}

#footer h4 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    color: #fff;
    position: relative;
    padding-bottom: 10px;
}

#footer h4:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 2px;
    background: #00a65a;
}

#footer a {
    color: #aaa;
    transition: color 0.3s ease;
}

#footer a:hover {
    color: #00a65a;
    text-decoration: none;
}

#footer ul {
    padding: 0;
}

#footer .footer-copyright {
    background: #0d0d0d;
    border-top: 1px solid #333;
    margin-top: 40px;
    padding: 20px 0;
    color: #777;
    font-size: 0.9rem;
}

/* 在线客服 */
.chat-menu {
    position: fixed;
    right: 20px;
    bottom: 100px;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.chat-menu .kfbtn {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 20px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
}

.chat-menu .kfbtn:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
}

.chat-menu .btn-qq {
    background: linear-gradient(135deg, #247af0, #1b6bc1);
}

.chat-menu .btn-qq:hover {
    background: linear-gradient(135deg, #1b6bc1, #155a9c);
}

.chat-menu .btn-qq .qq {
    background: #1b6bc1;
    position: absolute;
    width: 160px;
    left: -175px;
    top: 0;
    padding: 15px;
    color: #fff;
    font-size: 0.9rem;
    text-align: center;
    display: none;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.chat-menu .btn-qq .qq:before {
    content: '';
    position: absolute;
    right: -8px;
    top: 20px;
    border-left: 8px solid #1b6bc1;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
}

.chat-menu .btn-qq .qq a {
    margin: 8px 0;
    display: block;
    color: #fff;
    font-weight: 500;
}

.chat-menu .btn-qq:hover .qq {
    display: block;
    animation: fadeIn 0.3s ease;
}

.chat-menu .btn-wx {
    background: linear-gradient(135deg, #42b41f, #379d17);
}

.chat-menu .btn-wx:hover {
    background: linear-gradient(135deg, #379d17, #2c7e12);
}

.chat-menu .btn-wx .pic {
    position: absolute;
    left: -162px;
    top: 0;
    display: none;
    width: 147px;
    height: 147px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    background: white;
    padding: 10px;
}

.chat-menu .btn-wx .pic:before {
    content: '';
    position: absolute;
    right: -8px;
    top: 20px;
    border-left: 8px solid white;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
}

.chat-menu .btn-wx:hover .pic {
    display: block;
    animation: fadeIn 0.3s ease;
}

.chat-menu .btn-phone {
    background: linear-gradient(135deg, #ff6600, #e55a00);
}

.chat-menu .btn-phone:hover {
    background: linear-gradient(135deg, #e55a00, #cc4e00);
}

.chat-menu .btn-phone .phone {
    background: #e55a00;
    position: absolute;
    width: 200px;
    left: -215px;
    top: 0;
    line-height: 56px;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 600;
    text-align: center;
    display: none;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.chat-menu .btn-phone .phone:before {
    content: '';
    position: absolute;
    right: -8px;
    top: 20px;
    border-left: 8px solid #e55a00;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
}

.chat-menu .btn-phone:hover .phone {
    display: block;
    animation: fadeIn 0.3s ease;
}

.chat-menu .btn-top {
    background: linear-gradient(135deg, #666, #444);
    display: none;
}

.chat-menu .btn-top:hover {
    background: linear-gradient(135deg, #444, #333);
}

.chat-float {
    position: absolute;
    top: 0;
    right: 56px;
    cursor: pointer;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateX(10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* 通用工具类 */
.head-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
}

.bottom-fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
}

.left-top-absolute {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 9999;
}

.right-top-absolute {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 9999;
}

.small-circle {
    width: 2.2rem;
    height: 2.2rem;
    line-height: 2.2rem;
}

.line-height-20 {
    line-height: 20px;
}

.line-height-230 {
    line-height: 230%;
}

.line-height-300 {
    line-height: 300%;
}

.w-15 {
    width: 15%;
}

.w-20 {
    width: 20%;
}

.w-25 {
    width: 25%;
}

.w-50 {
    width: 50%;
}

.py-75 {
    padding-top: .75rem;
    padding-bottom: .75rem;
}

/* 会员中心 */
.fa-badge {
    right: -7px;
    top: -5px;
    font-size: 12px;
}

/* 结算页面 */
.max-width-300 {
    max-width: 300px;
}

.checkout_li {
    float: left;
    position: relative;
    width: 120px;
    border: 1px solid #ccc;
    padding-top: .2rem;
    padding-bottom: .2rem;
    cursor: pointer;
}

/* 产品/鼠标移动到图片显示文字及按钮 */
.thumb-info {
    display: block;
    position: relative;
    text-decoration: none;
    max-width: 100%;
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.thumb-info:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.thumb-info .thumb-info-wrapper {
    border-radius: 8px;
    margin: 0;
    overflow: hidden;
    display: block;
    position: relative;
}

.thumb-info .thumb-info-wrapper:after {
    content: "";
    background: rgba(33, 37, 41, 0.8);
    transition: opacity 0.3s ease;
    border-radius: 8px;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: block;
    opacity: 0;
    z-index: 1;
}

.thumb-info .thumb-info-inner {
    transition: all 0.3s ease;
    display: block;
}

.thumb-info .thumb-info-title {
    transition: all 0.3s ease;
    background: rgba(33, 37, 41, 0.9);
    color: #fff;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 15px 20px;
    z-index: 2;
    font-size: 1rem;
    font-weight: 500;
}

.thumb-info img {
    transition: transform 0.6s ease;
    border-radius: 8px;
    position: relative;
    width: 100%;
    height: 240px;
    object-fit: cover;
}

.thumb-info:hover .thumb-info-wrapper:after {
    opacity: 1;
}

.thumb-info:hover img {
    transform: scale(1.1);
}

.thumb-info.thumb-info-centered-info .thumb-info-title {
    background: transparent;
    left: 5%;
    width: 90%;
    transition: opacity 0.3s ease, transform 0.3s ease;
    transform: translateY(30%);
    top: 50%;
    bottom: auto;
    opacity: 0;
    text-align: center;
    padding: 0;
    position: absolute;
}

.thumb-info.thumb-info-centered-info:hover .thumb-info-title {
    opacity: 1;
    transform: translateY(-50%);
}

/* 产品滚动效果 */
.owl-carousel {
    position: relative;
}

.owl-carousel .owl-nav {
    top: 50%;
    position: absolute;
    width: 100%;
    margin-top: 0;
    transform: translateY(-50%);
    pointer-events: none;
}

.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next {
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 40px;
    height: 40px;
    outline: 0;
    margin: 0;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid #ddd !important;
    border-radius: 50% !important;
    color: #333 !important;
    font-size: 18px;
    pointer-events: all;
    transition: all 0.3s ease;
}

.owl-carousel .owl-nav button.owl-prev:hover,
.owl-carousel .owl-nav button.owl-next:hover {
    background: #00a65a !important;
    border-color: #00a65a !important;
    color: white !important;
}

.owl-carousel .owl-nav button.owl-prev {
    left: 15px;
}

.owl-carousel .owl-nav button.owl-next {
    right: 15px;
}

.owl-carousel.show-nav-title .owl-nav {
    top: 0;
    right: 0;
    margin-top: -60px;
    width: auto;
}

.owl-carousel.show-nav-title .owl-nav button[class*="owl-"],
.owl-carousel.show-nav-title .owl-nav button[class*="owl-"]:hover,
.owl-carousel.show-nav-title .owl-nav button[class*="owl-"]:active {
    font-size: 24px;
    background: transparent !important;
    width: 40px;
    height: 40px;
    border: none !important;
}

.owl-carousel.show-nav-title .owl-nav button.owl-prev {
    left: -50px;
}

.owl-carousel.show-nav-title .owl-nav button.owl-next {
    right: -50px;
}

.owl-carousel.show-nav-title.show-nav-title-both-sides .owl-nav {
    width: 100%;
}

.owl-carousel.show-nav-title.show-nav-title-both-sides button.owl-prev {
    left: 0;
}

.owl-carousel.show-nav-title.show-nav-title-both-sides button.owl-next {
    right: 0;
}

/* 详情页 */
.owl-carousel.nav-dark:not(.nav-style-1):not(.show-nav-title) .owl-nav button[class*="owl-"] {
    background-color: rgba(0, 0, 0, 0.6) !important;
    border-color: transparent !important;
    color: #fff !important;
}

.owl-carousel .owl-item {
    max-height: 400px;
    overflow: hidden;
}

.owl-carousel .small {
    max-height: 50px;
    overflow: hidden;
}

/* ============================================
   头部及导航样式
   ============================================ */
/* 头部 */
#header {
    position: relative;
    z-index: 1030;
}

#header .header-body {
    display: flex;
    flex-direction: column;
    background: #fff;
    transition: min-height 0.3s ease;
    width: 100%;
    border-top: 3px solid #00a65a;
    border-bottom: 1px solid #eee;
}

#header .header-container {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    transition: height 0.3s ease;
}

@media (max-width: 991px) {
    #header .header-container:not(.container):not(.container-fluid) .header-nav-main {
        padding: 0 0.75rem;
    }
}

@media (max-width: 767px) {
    #header .container {
        width: 100%;
        padding: 0 15px;
    }
}

#header .header-row {
    display: flex;
    flex-grow: 1;
    align-items: center;
    align-self: stretch;
    max-height: 100%;
}

#header .header-column {
    display: flex;
    align-self: stretch;
    align-items: center;
    flex-grow: 1;
    flex-direction: column;
}

#header .header-column .header-row {
    justify-content: inherit;
}

#header .header-top {
    display: flex;
    align-items: center;
    min-height: 40px;
    background: #f8f9fa;
}

/* Logo容器和图片样式 */
.header-logo {
    position: relative;
    display: inline-block;
    transition: transform 0.3s ease;
}

.header-logo img {
    display: block;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform: scale(1);
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
}

/* Logo悬停效果 */
.header-logo:hover img {
    transform: scale(1.05);
    filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.2));
}

/* Logo动画效果类 */
.logo-animate-up {
    transform: translateY(-20px);
    opacity: 0.8;
}

.logo-animate-reset {
    transform: translateY(0);
    opacity: 1;
}

/* 顶部固定布局调整 */
.fixed-top-35 {
    top: 35px;
}

.header-container {
    transition: all 0.3s ease;
}

/* 响应式调整 */
@media (max-width: 768px) {
    .header-logo img {
        max-width: 160px;
        height: auto;
    }
}

/* 顶部栏特定样式 */
.header-top.bg-light.fixed-top.shadow-sm {
    background: #f8f9fa !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
    z-index: 1030;
}

/* 主导航容器样式 */
.header-container.fixed-top-35.shadow-lg {
    background: rgba(255, 254, 254, 0.95) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1) !important;
    z-index: 1029;
}

/* 透明背景头部样式 */
.header-transparent-bg {
    background: rgba(255, 254, 254, 0.95) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

#header .header-nav {
    padding: 16px 0;
    min-height: 70px;
}

#header .header-nav-top {
    display: flex;
    align-self: stretch;
    align-items: center;
}

#header .header-nav-top .nav > li > a,
#header .header-nav-top .nav > li > span {
    color: #666;
    font-size: 0.9rem;
    padding: 0 12px;
    display: inline-block;
    transition: color 0.3s ease;
}

#header .header-nav-top .nav > li > a:hover {
    color: #00a65a;
}

#header .header-nav-top .nav > li + .nav-item-left-border {
    margin-left: 12px;
    padding-left: 12px;
    position: relative;
}

#header .header-nav-top .nav > li + .nav-item-left-border:after {
    background: rgba(0, 0, 0, 0.1);
    content: "";
    width: 1px;
    height: 16px;
    position: absolute;
    display: block;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}

#header .header-nav-top .dropdown-menu {
    border: none;
    margin-top: 2px;
    padding: 10px 0;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    background: #fff;
    min-width: 150px;
    border-radius: 8px;
    overflow: hidden;
}

/* 下拉菜单在透明背景下的调整 */
.header-container.fixed-top-35 .dropdown-menu {
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

#header .header-nav-top .dropdown-menu:before {
    content: '';
    display: block;
    position: absolute;
    top: -8px;
    right: 25px;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid white;
}

#header .header-nav-top .dropdown-menu a {
    padding: 8px 20px;
    font-size: 0.9rem;
    color: #666;
    transition: all 0.3s ease;
}

#header .header-nav-top .dropdown-menu a:hover {
    background: #f8f9fa;
    color: #00a65a;
    padding-left: 25px;
}

/* 语言切换下拉样式 */
#dropdownLanguage .dropdown-menu img {
    width: 20px;
    height: 15px;
    margin-right: 8px;
    vertical-align: middle;
}

/* 二维码下拉样式 */
#dropdownLanguage .dropdown-menu img[alt*="微信"],
#dropdownLanguage .dropdown-menu img[alt*="wechat"] {
    width: 120px;
    height: 120px;
    margin: 0 auto;
    display: block;
    padding: 10px;
}

#header .header-btn-collapse-nav {
    background: #00a65a;
    color: #fff;
    display: none;
    float: right;
    margin: 0 0 0 16px;
    border: none;
    width: 44px;
    height: 44px;
    border-radius: 4px;
    font-size: 1.2rem;
    transition: all 0.3s ease;
}

#header .header-btn-collapse-nav:hover {
    background: #008d4c;
    transform: scale(1.05);
}

@media (max-width: 991px) {
    #header .header-btn-collapse-nav {
        display: block;
    }
}

/* 头部导航主体 */
@media (max-width: 540px) {
    .nav-col {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

@media (min-width: 768px) {
    .nav-col {
        flex: 0 0 20%;
        max-width: 20%;
    }
}

.nav-col ul li {
    overflow: hidden;
}

.nav-col ul li img {
    width: 30px;
    height: 30px;
    border-radius: 4px;
    object-fit: cover;
}

/* 导航下拉菜单样式补充 */
.dropdown-mega .dropdown-menu {
    min-width: 800px !important;
}

.dropdown-mega .nav-col {
    padding: 15px;
}

.dropdown-mega .dropdown-mega-sub-title {
    border-bottom: 2px solid #00a65a;
    padding-bottom: 8px;
    margin-bottom: 15px;
    display: block;
}

/* 下拉菜单中的产品图片样式 */
.dropdown-menu img.rounded {
    width: 30px;
    height: 30px;
    object-fit: cover;
}

/* 多级下拉菜单 */
.dropdown-submenu {
    position: relative;
}

.dropdown-submenu > .dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
    margin-left: -1px;
    border-radius: 0 6px 6px 6px;
}

.dropdown-submenu:hover > .dropdown-menu {
    display: block;
}

@media (min-width: 992px) {
    #header .header-nav-main {
        display: flex !important;
        height: auto !important;
    }
    
    #header .header-nav-main nav {
        display: flex !important;
    }
    
    #header .header-nav-main nav > ul > li {
        height: 100%;
        align-self: stretch;
        margin-left: 2px;
    }
    
    #header .header-nav-main nav > ul > li > a {
        display: inline-flex;
        align-items: center;
        white-space: nowrap;
        border-radius: 4px;
        color: #555;
        font-size: 0.9rem;
        font-weight: 500;
        padding: 0.75rem 1.25rem;
        text-transform: none;
        letter-spacing: 0;
        transition: all 0.3s ease;
        position: relative;
    }
    
    #header .header-nav-main nav > ul > li > a:after {
        display: none;
    }
    
    #header .header-nav-main nav > ul > li > a.active {
        color: #00a65a;
        background: rgba(0, 166, 90, 0.1);
    }
    
    #header .header-nav-main nav > ul > li.open > a,
    #header .header-nav-main nav > ul > li:hover > a {
        color: #00a65a;
        background: rgba(0, 166, 90, 0.1);
    }
    
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu {
        top: -10000px;
        display: block;
        opacity: 0;
        left: auto;
        border-radius: 0 8px 8px 8px;
        border: none;
        border-top: 3px solid #00a65a;
        box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.1);
        margin: 0;
        min-width: 220px;
        padding: 10px 0;
        z-index: 1050;
    }
    
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li a {
        border-bottom: 1px solid #f8f9fa;
        color: #666;
        font-size: 0.9rem;
        padding: 10px 20px;
        transition: all 0.3s ease;
    }
    
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li a:hover {
        background: #f8f9fa;
        color: #00a65a;
        padding-left: 25px;
    }
    
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li.dropdown-submenu {
        position: relative;
    }
    
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li.dropdown-submenu > a:after {
        font-family: 'Font Awesome 5 Free';
        content: "\f054";
        font-weight: 900;
        position: absolute;
        top: 50%;
        font-size: 0.7rem;
        opacity: 0.5;
        right: 20px;
        transform: translateY(-50%);
        transition: all 0.3s ease;
    }
    
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li.dropdown-submenu > .dropdown-menu {
        left: 100%;
        margin-top: -10px;
        margin-left: 5px;
        border-radius: 8px;
        opacity: 0;
    }
    
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li.dropdown-submenu.open > a:after,
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li.dropdown-submenu:hover > a:after {
        opacity: 1;
        right: 15px;
    }
    
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li.dropdown-submenu.open > .dropdown-menu,
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li.dropdown-submenu:hover > .dropdown-menu {
        top: 0;
        opacity: 1;
    }
    
    #header .header-nav-main nav > ul > li.dropdown.open > a,
    #header .header-nav-main nav > ul > li.dropdown:hover > a {
        border-radius: 4px 4px 0 0;
        position: relative;
    }
    
    #header .header-nav-main nav > ul > li.dropdown.open > a:before,
    #header .header-nav-main nav > ul > li.dropdown:hover > a:before {
        content: '';
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -3px;
        border-bottom: 5px solid #00a65a;
    }
    
    #header .header-nav-main nav > ul > li.dropdown.open > .dropdown-menu,
    #header .header-nav-main nav > ul > li.dropdown:hover > .dropdown-menu {
        top: auto;
        display: block;
        opacity: 1;
    }
    
    #header .header-nav-main nav > ul > li.dropdown-mega {
        position: static;
    }
    
    #header .header-nav-main nav > ul > li.dropdown-mega > .dropdown-menu {
        border-radius: 8px;
        left: 15px;
        right: 15px;
        width: auto;
    }
    
    #header .header-nav-main nav > ul > li.dropdown-mega .dropdown-mega-content {
        padding: 1.5rem;
    }
    
    #header .header-nav-main nav > ul > li.dropdown-mega .dropdown-mega-sub-title {
        color: #333;
        display: block;
        font-size: 0.95rem;
        font-weight: 600;
        margin-top: 20px;
        padding-bottom: 10px;
        border-bottom: 2px solid #00a65a;
    }
    
    #header .header-nav-main nav > ul > li.dropdown-mega .dropdown-mega-sub-nav > li > a {
        border: none;
        border-radius: 4px;
        color: #666;
        display: block;
        font-size: 0.9rem;
        margin: 0 0 5px -8px;
        padding: 5px 8px;
        text-decoration: none;
        transition: all 0.3s ease;
    }
    
    #header .header-nav-main nav > ul > li.dropdown-mega .dropdown-mega-sub-nav > li:hover > a {
        background: #f8f9fa;
        color: #00a65a;
        padding-left: 12px;
    }
}

/* 移动端头部导航主体 */
@media (max-width: 991px) {
    #header .header-nav-main {
        position: absolute;
        background: #fff;
        width: calc(100% - 30px);
        top: 100%;
        left: 50%;
        transform: translateX(-50%);
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        border-radius: 8px;
        overflow: hidden;
    }
    
    #header .header-nav-main nav {
        max-height: 70vh;
        overflow-y: auto;
        padding: 0;
        -webkit-overflow-scrolling: touch;
    }
    
    #header .header-nav-main nav::-webkit-scrollbar {
        width: 5px;
    }
    
    #header .header-nav-main nav::-webkit-scrollbar-thumb {
        border-radius: 0;
        background: rgba(0, 166, 90, 0.3);
    }
    
    #header .header-nav-main nav > ul {
        padding: 15px;
        flex-direction: column;
    }
    
    #header .header-nav-main nav > ul li {
        border-bottom: 1px solid #eee;
        margin: 0;
        padding: 0;
        position: relative;
    }
    
    #header .header-nav-main nav > ul li:last-child {
        border-bottom: none;
    }
    
    #header .header-nav-main nav > ul li a {
        font-size: 0.95rem;
        padding: 12px 15px;
        margin: 2px 0;
        border-radius: 6px;
        color: #555;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    
    #header .header-nav-main nav > ul li a.active {
        background: rgba(0, 166, 90, 0.1);
        color: #00a65a;
        font-weight: 500;
    }
    
    #header .header-nav-main nav > ul li.dropdown .dropdown-menu {
        background: #f9f9f9;
        padding: 0;
        margin: 5px 0 5px 15px;
        font-size: 0.9rem;
        border-radius: 6px;
        border: 1px solid #eee;
    }
    
    #header .header-nav-main nav > ul li.dropdown.open > .dropdown-menu {
        display: block;
        margin-left: 15px;
    }
    
    /* 移动端下拉菜单调整 */
    .dropdown-menu {
        position: static !important;
        float: none !important;
        width: 100% !important;
        box-shadow: none !important;
        border: none !important;
        background: #f9f9f9 !important;
    }
    
    .dropdown-mega .dropdown-menu {
        min-width: 100% !important;
        overflow-y: auto;
        max-height: 400px;
    }
    
    /* 移动端隐藏一些元素 */
    .d-none.d-md-block,
    .d-none.d-sm-block {
        display: none !important;
    }
}

/* 导航特效 */
html #header.header-transparent {
    min-height: 0 !important;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

html #header.header-transparent .header-body:not(.header-border-bottom) {
    border-bottom: 0;
    background: transparent;
}

html:not(.sticky-header-active) #header.header-transparent:not(.header-semi-transparent) .header-body {
    background-color: transparent !important;
}

html.sticky-header-active {
    padding-top: 140px;
}

/* 暗色主题头部样式 */
#header.header-dark .header-body {
    background: #1a1a1a;
    border-top-color: #00a65a;
    border-bottom-color: #333;
}

#header.header-dark .header-nav-main nav > ul > li > a {
    color: #eee;
}

#header.header-dark .header-nav-main nav > ul > li > a:hover {
    color: #00a65a;
    background: rgba(0, 166, 90, 0.1);
}

/* 下拉箭头优化 */
#header .header-nav-main nav > ul > li.dropdown.open > a:before,
#header .header-nav-main nav > ul > li.dropdown:hover > a:before {
    font-family: 'Font Awesome 5 Free';
    content: "\f0d8";
    font-weight: 900;
    position: absolute;
    top: calc(100% - 5px);
    font-size: 1rem;
    opacity: 1;
    left: 50%;
    transform: translateX(-50%);
    color: #00a65a;
    z-index: 1;
}

/* 动画性能优化 */
.thumb-info img,
#header .header-logo img {
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                filter 0.3s ease,
                opacity 0.3s ease;
    will-change: transform, filter, opacity;
}

/* 移动端导航样式优化 */
@media (max-width: 991px) {
    #header .header-nav-main nav > ul > li > a {
        padding: 12px 15px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    }
    
    #header .header-nav-main nav > ul > li:last-child > a {
        border-bottom: none;
    }
}

/* ============================================
   全局样式结束
   ============================================ */

/* ============================================
   首页样式 - 合并到全局CSS末尾
   ============================================ */

/* 首页产品卡片容器 */
.single-products.new-arrivals {
    margin-bottom: 20px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    position: relative;
}

.single-products.new-arrivals:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
    border-color: #00a65a;
}

/* 产品图片区域 */
.single-products.new-arrivals .product-img {
    position: relative;
    overflow: hidden;
    background: #f8f9fa;
    min-height: 220px;
}

.single-products.new-arrivals .product-img img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    transition: transform 0.6s ease;
    display: block;
}

.single-products.new-arrivals:hover .product-img img {
    transform: scale(1.05);
}

/* 产品内容区域 */
.single-products.new-arrivals .product-content {
    padding: 15px;
}

.single-products.new-arrivals .product-content .title {
    display: block;
    color: #333;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 10px;
    text-decoration: none;
    transition: color 0.3s ease;
}

.single-products.new-arrivals .product-content .title:hover {
    color: #00a65a;
}

/* 价格样式 */
.single-products.new-arrivals .products-price {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.single-products.new-arrivals .products-price li {
    font-size: 16px;
    font-weight: 600;
    color: #ff500b;
}

.single-products.new-arrivals .products-price li span {
    font-size: 12px;
    color: #30B239;
    font-weight: normal;
}

/* hot/new 标签样式 */
.single-products.new-arrivals .product-img .hot,
.single-products.new-arrivals .product-img .new {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 4px 10px;
    border-radius: 4px;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    z-index: 10;
    background: linear-gradient(135deg, #ff6b6b 0%, #ee5a52 100%);
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    line-height: 1;
}

.single-products.new-arrivals .product-img .new {
    background: linear-gradient(135deg, #00a65a 0%, #008d4c 100%);
}

/* 趋势产品列表样式 */
.trending-product-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.trending-product-list li {
    margin-bottom: 15px;
    border-radius: 10px;
    overflow: hidden;
    transition: all 0.3s ease;
    border: 1px solid #f0f0f0;
    background: #fff;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    position: relative;
}

.trending-product-list li:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
    border-color: #00a65a;
}

.trending-product-list li a.title {
    text-decoration: none;
    color: inherit;
    display: block;
}

.trending-product-list li .row {
    margin: 0;
    align-items: center;
}

.trending-product-list li img {
    width: 100%;
    height: 80px;
    object-fit: cover;
    border-radius: 10px 0 0 10px;
    transition: transform 0.3s ease;
}

.trending-product-list li:hover img {
    transform: scale(1.05);
}

.trending-product-list li .product-content {
    padding: 12px;
    border-radius: 0 10px 10px 0;
}

.trending-product-list li .product-content h5 {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 5px;
    color: #333;
    line-height: 1.4;
}

.trending-product-list li .product-content .products-price {
    margin: 0;
    padding: 0;
    list-style: none;
}

.trending-product-list li .product-content .products-price li {
    font-size: 14px;
    font-weight: 600;
    color: #ff500b;
}

.trending-product-list li .product-content .products-price li span {
    font-size: 12px;
    color: #30B239;
    font-weight: normal;
}

/* 分区标题样式 */
.section-title {
    position: relative;
    margin-bottom: 30px;
}

.section-title h2 {
    font-size: 24px;
    font-weight: 600;
    color: #333;
    position: relative;
    display: inline-block;
}

.section-title h2 i {
    font-size: 20px;
}

.section-title .read-more {
    float: right;
    color: #00a65a;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.3s ease;
    padding: 5px 0;
}

.section-title .read-more:hover {
    color: #008d4c;
    transform: translateX(5px);
}

/* 特价商品专区样式 */
.special-offer-area {
    background: linear-gradient(135deg, rgba(255, 245, 245, 0.3) 0%, rgba(255, 240, 240, 0.3) 100%);
    border-radius: 15px;
    padding: 30px 0;
    margin: 40px 0;
    position: relative;
}

.special-product {
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border: 1px solid #f0f0f0;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    position: relative;
    height: 100%;
}

.special-product:hover {
    transform: translateY(-8px);
    border-color: #ff7d00;
    box-shadow: 0 12px 30px rgba(255, 125, 0, 0.2) !important;
}

/* 特价商品倒计时样式 */
.countdown-tag {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    background: linear-gradient(135deg, #ff6b6b 0%, #ee5a52 100%);
    vertical-align: middle;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}

/* 特价商品标签 - 统一使用这个版本 */
.product-tag {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 4px 12px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 20;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    background: linear-gradient(135deg, #ff7d00 0%, #ff4500 100%);
    line-height: 1;
    max-width: 70%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discount-badge {
    font-size: 11px;
    padding: 4px 8px;
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important;
    border-radius: 4px;
    font-weight: 600;
    line-height: 1;
}

/* 产品描述区域 */
.product-description {
    min-height: 40px;
    margin-bottom: 10px;
    line-height: 1.5;
}

/* 通用标签：左上角悬浮 - 趋势产品专用 */
.main-tag-badge {
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: 15;
    padding: 3px 8px;
    font-size: 10px;
    font-weight: 600;
    border-radius: 4px;
    background: linear-gradient(135deg, rgba(230, 115, 0, 0.9) 0%, rgba(255, 87, 34, 0.9) 100%);
    color: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    max-width: 80%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1;
}

/* 服务卡片样式 */
.single-services {
    text-align: center;
    padding: 30px 20px;
    border-radius: 10px;
    background: #fff;
    transition: all 0.3s ease;
    border: 1px solid #f0f0f0;
    height: 100%;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
}

.single-services:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1) !important;
    border-color: #00a65a;
}

.single-services .icon {
    margin-bottom: 20px;
}

.single-services .icon img {
    width: 60px;
    height: 60px;
    object-fit: contain;
}

.single-services h3 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #333;
}

.single-services p {
    color: #666;
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 0;
}

/* 销售报价区域 */
.sale-offer-bg {
    border-radius: 10px;
    overflow: hidden;
    padding: 50px 30px;
    position: relative;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.sale-offer-bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1;
}

.sale-offer-bg h5,
.sale-offer-bg h3,
.sale-offer-bg a {
    position: relative;
    z-index: 2;
}

.sale-offer-bg h5 {
    color: #FF500B !important;
    font-size: 18px;
    margin-bottom: 10px;
}

.sale-offer-bg h5 span {
    font-weight: 700;
}

.sale-offer-bg h3 {
    color: #FF500B !important;
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 30px;
}

.sale-offer-bg .default-btn {
    background: #00a65a;
    color: #fff;
    padding: 12px 30px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
    border: 2px solid #00a65a;
}

.sale-offer-bg .default-btn:hover {
    background: transparent;
    color: #00a65a;
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0, 166, 90, 0.3);
}

/* 合作伙伴样式 */
.partner-area {
    padding: 60px 0 30px;
}

.partner-item {
    text-align: center;
    padding: 15px;
    background: #fff;
    border-radius: 10px;
    transition: all 0.3s ease;
    border: 1px solid #f0f0f0;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
}

.partner-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    border-color: #00a65a;
}

.partner-item img {
    max-width: 100%;
    height: 60px;
    object-fit: contain;
    filter: grayscale(100%);
    opacity: 0.8;
    transition: all 0.3s ease;
}

.partner-item:hover img {
    filter: grayscale(0%);
    opacity: 1;
}

/* 艺术字体样式 */
.slogan-text,
.home-slogan {
    text-align: center;
    color: #FF6A00;
    font-family: 'Dancing Script', cursive;
    font-size: 24px;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.2);
    line-height: 1.4;
    margin: 30px 0;
    padding: 0 15px;
}

/* 动画效果类 */
.dream[data-animate] {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.dream.animated {
    opacity: 1;
    visibility: visible;
}

/* ============================================
   首页响应式调整
   ============================================ */

@media (max-width: 1200px) {
    .single-products.new-arrivals .product-img img {
        height: 200px;
    }
    .single-products.new-arrivals .product-img {
        min-height: 200px;
    }
}

@media (max-width: 992px) {
    .special-offer-area {
        padding: 20px 0;
        margin: 30px 0;
    }
    
    .countdown-tag {
        font-size: 10px;
        min-width: 75px;
        padding: 4px 8px;
    }
    
    .slogan-text,
    .home-slogan {
        font-size: 20px;
    }
    
    .sale-offer-bg h3 {
        font-size: 28px;
    }
    
    .section-title h2 {
        font-size: 22px;
    }
    
    .product-tag {
        font-size: 10px;
        padding: 3px 8px;
    }
}

@media (max-width: 768px) {
    .special-product {
        margin-bottom: 20px;
    }
    
    .trending-product-list li img {
        height: 70px;
    }
    
    .single-products.new-arrivals .product-img img {
        height: 180px;
    }
    .single-products.new-arrivals .product-img {
        min-height: 180px;
    }
    
    .slogan-text,
    .home-slogan {
        font-size: 18px;
    }
    
    .sale-offer-bg {
        padding: 40px 20px;
        min-height: 250px;
    }
    
    .sale-offer-bg h3 {
        font-size: 24px;
    }
    
    .partner-item img {
        height: 50px;
    }
    
    .section-title .read-more {
        float: none;
        display: inline-block;
        margin-top: 10px;
    }
    
    .main-tag-badge {
        font-size: 9px;
        padding: 2px 6px;
    }
}

@media (max-width: 576px) {
    .special-offer-area {
        border-radius: 10px;
        padding: 15px 0;
        margin: 20px 0;
    }
    
    .countdown-tag {
        font-size: 9px;
        min-width: 70px;
        padding: 3px 6px;
    }
    
    .product-tag {
        font-size: 9px;
        padding: 2px 6px;
    }
    
    .single-products.new-arrivals .product-img img {
        height: 160px;
    }
    .single-products.new-arrivals .product-img {
        min-height: 160px;
    }
    
    .trending-product-list li {
        margin-bottom: 10px;
    }
    
    .trending-product-list li img {
        height: 60px;
    }
    
    .slogan-text,
    .home-slogan {
        font-size: 16px;
        margin: 20px 0;
    }
    
    .single-services {
        padding: 20px 15px;
        margin-bottom: 15px;
    }
    
    .partner-area {
        padding: 40px 0 20px;
    }
    
    .main-tag-badge {
        top: 3px;
        left: 3px;
        font-size: 8px;
        padding: 1px 4px;
    }
}

/* 移动端隐藏部分元素 */
@media (max-width: 991px) {
    .section-title h2 .h6.text-muted {
        display: none;
    }
}

/* 合作伙伴轮播容器 */
.carousel-itempartner-slider {
    overflow: hidden;
}

/* 确保图片显示正常 */
.single-products.new-arrivals .product-img img[src*="nopic.png"] {
    background: #f5f5f5;
    padding: 20px;
    object-fit: contain;
}

/* 图片加载失败时的备用样式 */
.single-products.new-arrivals .product-img img:before {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f5f5f5 url('/skin/admin/img/nopic.png') center center no-repeat;
    background-size: 50px 50px;
}

/* 确保所有标签的z-index正确 */
.single-products.new-arrivals .product-img .hot,
.single-products.new-arrivals .product-img .new,
.product-tag,
.countdown-tag,
.main-tag-badge {
    z-index: 20;
    pointer-events: none;
}

/* 产品图片容器添加备用背景 */
.single-products.new-arrivals .product-img {
    background: #f8f9fa url('/skin/admin/img/nopic.png') center center no-repeat;
    background-size: 50px 50px;
}

/* ============================================
   首页样式结束
   ============================================ */

/* ============================================
   商品列表页样式
   ============================================ */

/* 列表页筛选容器 */
.btn-group .btn {
    padding: 8px 18px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 20px !important;
    transition: all 0.3s ease;
    margin-right: 10px;
    border-width: 1px;
}

.btn-group .btn-outline-primary {
    color: #007bff;
    border-color: #007bff;
    background-color: transparent;
}

.btn-group .btn-outline-primary:hover {
    color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,123,255,0.2);
}

.btn-group .btn-outline-danger {
    color: #dc3545;
    border-color: #dc3545;
    background-color: transparent;
}

.btn-group .btn-outline-danger:hover {
    color: #fff !important;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(220,53,69,0.2);
}

.btn-group .btn.active {
    color: #fff !important;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    box-shadow: 0 4px 8px rgba(220,53,69,0.2);
}

.btn-group .btn.active:hover {
    opacity: 0.95 !important;
    transform: translateY(0);
}

/* 列表页产品图片容器 */
.product-img {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
}

.product-img img {
    border-radius: 8px;
    transition: transform 0.3s ease;
    width: 100%;
    height: auto;
    z-index: 1;
}

.single-products:hover .product-img img {
    transform: scale(1.03);
}

/* 列表页单个产品容器 */
.single-products {
    height: 100%;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    position: relative;
}

.single-products:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
    border-color: #00a65a;
}

/* 列表页产品内容区域 */
.product-content {
    padding: 8px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.products-price {
    margin-top: auto;
    padding-top: 5px;
}

/* 面包屑导航样式 */

.breadcrumb-container a {
    color: #666;
    text-decoration: none;
    transition: color 0.3s ease;
}

.breadcrumb-container a:hover {
    color: #00a65a;
}

.breadcrumb-container .fa-angle-right {
    color: #999;
    margin: 0 5px;
}

/* 列表页搜索表单 */
.search-input {
    border-radius: 50px !important;
    border: 1px solid #ddd;
    transition: all 0.3s ease;
}

.search-input:focus {
    border-color: #00a65a;
    box-shadow: 0 0 0 0.2rem rgba(0, 166, 90, 0.25);
}

.search-submit {
    background: #00a65a;
    color: #fff;
    border-radius: 20px !important;
    transition: all 0.3s ease;
}

.search-submit:hover {
    background: #008d4c;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 166, 90, 0.3);
}

/* 列表页侧边栏样式 */
.sidebar-container {
    padding: 0;
}


.sidebar-title:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 2px;
    background: #00a65a;
}

.sidebar-list li {
    border-bottom: 1px solid #f0f0f0;
    padding: 10px 0;
    transition: all 0.3s ease;
}

.sidebar-list li:last-child {
    border-bottom: none;
}

.sidebar-list li:hover {
    padding-left: 5px;
}

.sidebar-list li a {
    color: #555;
    text-decoration: none;
    display: block;
    transition: color 0.3s ease;
}

.sidebar-list li a:hover {
    color: #00a65a;
}

/* 列表页热销产品样式 */
.hot-product-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
    padding: 10px;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.hot-product-item:hover {
    background: #f8f9fa;
}

.hot-product-img {
    width: 60px;
    height: 60px;
    border-radius: 6px;
    overflow: hidden;
    margin-right: 10px;
    flex-shrink: 0;
}

.hot-product-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.hot-product-item:hover .hot-product-img img {
    transform: scale(1.05);
}

.hot-product-info {
    flex: 1;
}

.hot-product-title {
    font-size: 14px;
    font-weight: 500;
    color: #333;
    margin-bottom: 5px;
    line-height: 1.4;
}

.hot-product-desc {
    font-size: 12px;
    color: #666;
    line-height: 1.5;
}

/* 列表页分页样式 */
.list-pagination {
    margin: 30px 0;
}

.no-data-message {
    padding: 50px 0;
    text-align: center;
    color: #666;
}

.no-data-message i {
    font-size: 24px;
    color: #999;
    margin-bottom: 15px;
}

/* ============================================
   商品列表页样式结束
   ============================================ */

/* ============================================
   商品详情页样式
   ============================================ */

/* 详情页通用标签左上角样式 */
.detail-page .main-tag-badge {
    position: absolute;
    top: 15px;
    left: 25px;
    z-index: 10;
    padding: 4px 14px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 5px;
    background-color: rgba(230, 115, 0, 0.5);
    color: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* 文本换行样式 */
.detail-page .text-muted {
    word-wrap: break-word;
    overflow-wrap: break-word;
    max-width: 100%;
}

/* 模态框按钮样式 */
.detail-page .custom-demo-btn {
    background-color: #dc3545;
    color: white;
    border-color: #dc3545;
    transition: all 0.3s ease;
}

.detail-page .custom-demo-btn:hover {
    background-color: #0d6efd;
    color: white;
    border-color: #0d6efd;
}

.detail-page .custom-demo-btn:active {
    background-color: #0a58ca !important;
    border-color: #0a58ca !important;
}

/* 购买链接样式 */
.detail-page .buy-link {
    text-decoration: none;
    color: #0d6efd;
    transition: color 0.3s ease;
}

.detail-page .buy-link:hover {
    text-decoration: none;
    color: #0a58ca;
}

/* 详情页倒计时样式 */
.detail-page .countdown-container {
    padding: 3px 8px;
    border-radius: 4px;
    background-color: #fef2f2;
    vertical-align: middle;
    display: inline-block;
}

.detail-page .countdown-time {
    letter-spacing: 1px;
    font-size: 15px;
    font-weight: 600;
    color: #FFFFFF;
}

/* 已购买提示样式 */
.detail-page .purchased-tip {
    background-color: #e6f4ea;
    border: 1px solid #d1e7dd;
    border-radius: 6px;
    padding: 12px 16px;
    margin: 15px 0;
    color: #1e7e34;
    font-size: 14px;
    line-height: 1.5;
}

.detail-page .purchased-tip i {
    margin-right: 8px;
    font-size: 16px;
    color: #198754;
}

/* 详情页产品图片轮播样式 */
.detail-page .owl-carousel.nav-dark {
    border: 1px solid #eee;
    border-radius: 8px;
    overflow: hidden;
}

.detail-page .owl-carousel.nav-dark .owl-nav button[class*="owl-"] {
    background-color: rgba(0, 0, 0, 0.6) !important;
    border-color: transparent !important;
    color: #fff !important;
}

.detail-page .owl-carousel .big {
    width: 100%;
    height: auto;
    max-height: 400px;
    object-fit: contain;
}

.detail-page .owl-carousel .small {
    width: 80px;
    height: 80px;
    object-fit: cover;
    cursor: pointer;
    border: 2px solid transparent;
    transition: border-color 0.3s ease;
}

.detail-page .owl-carousel .small:hover,
.detail-page .owl-carousel .small.active {
    border-color: #00a65a;
}

/* 详情页规格选择样式 */
.detail-page .attr-row {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #f0f0f0;
}

.detail-page .attr-row:last-child {
    border-bottom: none;
}

.detail-page .descartes {
    margin: 2px 4px;
    padding: 6px 12px;
    border: 1px solid #ddd;
    border-radius: 20px;
    background: #f8f9fa;
    color: #555;
    cursor: pointer;
    transition: all 0.3s ease;
}

.detail-page .descartes:hover {
    border-color: #00a65a;
    color: #00a65a;
}

.detail-page .descartes.active {
    background: #00a65a;
    color: #fff;
    border-color: #00a65a;
}

/* 详情页数量选择样式 */
.detail-page .quantity {
    width: 140px;
    height: 36px;
    position: relative;
}

.detail-page .quantity .minus,
.detail-page .quantity .plus {
    position: absolute;
    width: 36px;
    height: 36px;
    border: 1px solid #ddd;
    background: #f8f9fa;
    cursor: pointer;
    z-index: 1;
    transition: all 0.3s ease;
}

.detail-page .quantity .minus {
    left: 0;
    border-radius: 4px 0 0 4px;
}

.detail-page .quantity .plus {
    right: 0;
    border-radius: 0 4px 4px 0;
}

.detail-page .quantity .minus:hover,
.detail-page .quantity .plus:hover {
    background: #00a65a;
    color: #fff;
    border-color: #00a65a;
}

.detail-page .quantity .qty {
    width: 100%;
    height: 36px;
    padding: 0 40px;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-align: center;
    outline: none;
}

/* 详情页按钮样式 */
.detail-page .btn-rounded {
    border-radius: 50px;
    padding: 8px 24px;
    font-weight: 500;
}

.detail-page .btn-success {
    background-color: #00a65a;
    border-color: #00a65a;
}

.detail-page .btn-success:hover {
    background-color: #008d4c;
    border-color: #008d4c;
}

.detail-page .btn-danger {
    background-color: #dc3545;
    border-color: #dc3545;
}

.detail-page .btn-danger:hover {
    background-color: #c82333;
    border-color: #bd2130;
}

.detail-page .btn.disabled,
.detail-page .btn:disabled {
    opacity: 0.65;
    cursor: not-allowed;
}

/* 详情页选项卡样式 */
.detail-page .nav-tabs {
    border-bottom: 2px solid #dee2e6;
    margin-top: 30px;
}

.detail-page .nav-tabs .nav-link {
    border: 1px solid transparent;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    padding: 10px 20px;
    color: #666;
    transition: all 0.3s ease;
}

.detail-page .nav-tabs .nav-link:hover {
    border-color: #eee #eee #dee2e6;
    color: #00a65a;
}

.detail-page .nav-tabs .nav-link.active {
    color: #00a65a;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff;
    border-top: 3px solid #00a65a;
}

.detail-page .tab-content {
    border: 1px solid #dee2e6;
    border-top: none;
    padding: 20px;
    border-radius: 0 0 4px 4px;
}

/* 详情页相关产品样式 */





/* 详情页模态框样式 */
.detail-page .modal-content {
    border-radius: 8px;
    overflow: hidden;
}

.detail-page .modal-header {
    background: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    padding: 15px 20px;
}

.detail-page .modal-body {
    padding: 20px;
    line-height: 1.6;
}

.detail-page .modal-footer {
    padding: 15px 20px;
    border-top: 1px solid #dee2e6;
}

/* 详情页响应式适配 */
@media (max-width: 768px) {
    .detail-page .countdown-container {
        display: block;
        margin-top: 8px;
        width: fit-content;
    }
    
    .detail-page .owl-carousel .big {
        max-height: 300px;
    }
    
    .detail-page .owl-carousel .small {
        width: 60px;
        height: 60px;
    }
    
    .detail-page .btn-rounded {
        padding: 6px 16px;
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .detail-page .main-tag-badge {
        top: 10px;
        left: 10px;
        padding: 3px 10px;
        font-size: 12px;
    }
    
    .detail-page .attr-row {
        margin-bottom: 10px;
    }
    
    .detail-page .descartes {
        padding: 4px 8px;
        font-size: 13px;
    }
    
    .detail-page .quantity {
        width: 120px;
    }
    
    .detail-page .nav-tabs .nav-link {
        padding: 8px 12px;
        font-size: 13px;
    }
}

/* ============================================
   文章列表页样式 - 新增
   ============================================ */

/* 文章列表卡片样式 */
.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 0.25rem;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    transition: box-shadow 0.3s ease-in-out;
}

.card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
}

/* 文章标签样式 */
.product-tag {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 20px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    background: linear-gradient(135deg, #ff7d00 0%, #ff4500 100%);
    margin-right: 5px;
    vertical-align: middle;
}

.product-tag-free {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 20px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
    margin-right: 5px;
    vertical-align: middle;
}

.countdown-tag {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 20px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    background: #dc3545;
    vertical-align: middle;
}

/* 价格样式 */
.special-price {
    color: #dc3545;
    font-weight: bold;
    font-size: 1.1rem;
}

.original-price {
    color: #6c757d;
    text-decoration: line-through;
    margin-left: 5px;
    font-size: 0.9rem;
}

/* 文章元信息 */
.list-item-meta {
    color: #6c757d;
    font-size: 0.85rem;
}

.list-item-meta i {
    width: 16px;
}

/* 文章内容行数限制 */
.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ============================================
   文章列表页样式结束
   ============================================ */

/* ============================================
   视频列表页样式 - 新增
   ============================================ */

/* 视频列表页筛选区域样式 */
.btn-group .btn {
    padding: 8px 18px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 20px !important;
    transition: all 0.3s ease;
    margin-right: 10px;
    border-width: 1px;
}

/* 全部视频按钮 */
.btn-group .btn-outline-primary {
    color: #007bff;
    border-color: #007bff;
    background-color: transparent;
}

.btn-group .btn-outline-primary:hover {
    color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,123,255,0.2);
}

/* 特价视频按钮 */
.btn-group .btn-outline-danger {
    color: #dc3545;
    border-color: #dc3545;
    background-color: transparent;
}

.btn-group .btn-outline-danger:hover {
    color: #fff !important;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(220,53,69,0.2);
}

/* 激活状态按钮 */
.btn-group .btn.active {
    color: #fff !important;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    box-shadow: 0 4px 8px rgba(220,53,69,0.2);
}

.btn-group .btn.active:hover {
    opacity: 0.95 !important;
    transform: translateY(0);
}

/* 视频列表页产品标签样式 */
.product-tag {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    background: linear-gradient(135deg, #ff7d00 0%, #ff4500 100%);
}

/* 免费视频标签样式 */
.product-tag-free {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
}

/* 倒计时标签样式 */
.countdown-tag {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 2px 8px;
    border-radius: 4px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    background: #dc3545;
}

/* 视频热度显示样式 */
.product-hits {
    position: absolute;
    bottom: 10px;
    right: 10px;
    padding: 2px 8px;
    border-radius: 4px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    background: #30B239;
    display: flex;
    align-items: center;
    gap: 4px;
    opacity: 0.95;
    transition: opacity 0.3s ease;
}

.product-hits i {
    font-size: 9px;
}

.product-img:hover .product-hits {
    opacity: 1;
}

/* 视频图片容器样式 */
.product-img {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
}

.product-img img {
    border-radius: 8px;
    transition: transform 0.3s ease;
    width: 100%;
    height: auto;
    z-index: 1;
}

.single-products:hover .product-img img {
    transform: scale(1.03);
}

/* 视频卡片容器样式 */
.single-products {
    height: 100%;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    position: relative;
}

.single-products:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
    border-color: #00a65a;
}

/* 视频内容区域样式 */
.product-content {
    padding: 8px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.products-price {
    margin-top: auto;
    padding-top: 5px;
}

/* 通用标签样式 */
.main-tag-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
}

/* ============================================
   视频详情页样式 - 新增
   ============================================ */

/* 视频容器样式 */
.video-container { 
    position: relative;
    width: 100%;
    height: 500px;
    overflow: hidden;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 确保Video.js的poster正确显示 */
.video-js .vjs-poster {
    background-size: cover !important;
    background-position: center !important;
}

/* 大播放按钮样式 */
.vjs-big-play-button {
    width: 70px !important; 
    height: 70px !important; 
    line-height: 70px !important;
    border-radius: 50% !important; 
    font-size: 30px !important;
    background-color: rgba(255, 0, 0, 0.8) !important; 
    z-index: 101 !important;
    margin-top: -35px !important; 
    margin-left: -35px !important;
    border: none !important;
}

/* 视频详情页响应式适配 */
@media (max-width: 992px) {
    .video-container {
        height: 400px;
    }
    .video-js {
        height: 400px !important;
    }
    /* 平板剧集列表滚动高度适配 */
    .video-right .video-source {
        max-height: 400px !important;
    }
}

@media (max-width: 768px) { 
    .video-container {
        height: 280px;
    }
    .video-js {
        height: 280px !important;
    }
    /* 移动端剧集列表滚动高度适配 */
    .video-right .video-source {
        max-height: 280px !important;
    }
}

/* 试看遮罩层样式 */
.vjs-custom-overlay {
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%;
    background: rgba(0,0,0,0.7); 
    display: flex; 
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    color: white; 
    font-size: 16px; 
    z-index: 100; 
    pointer-events: none;
    padding-bottom: 15%;
    box-sizing: border-box;
}

.vjs-custom-overlay span { 
    pointer-events: auto; 
    background: rgba(0,0,0,0.5);
    padding: 10px 20px;
    border-radius: 4px;
}

.vjs-trial-toast {
    position: absolute; 
    bottom: 60px; 
    left: 50%; 
    transform: translateX(-50%);
    background: rgba(255,0,0,0.9); 
    color: white; 
    padding: 8px 15px;
    border-radius: 4px; 
    z-index: 90; 
    display: none;
}

.video-js .vjs-control-bar { 
    z-index: 101 !important; 
}

/* 图片加载失败时的样式 */
.poster-error-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(45deg, #1a1a1a, #2a2a2a);
    z-index: 1;
}

.poster-error-overlay h4 {
    color: #fff;
    text-shadow: 0 2px 4px rgba(0,0,0,0.5);
    padding: 20px;
    text-align: center;
}

/* 视频详情页特有的价格样式 */
.special-price { 
    color: #dc3545; 
    font-weight: bold; 
    font-size: 18px; 
}
.original-price { 
    color: #6c757d; 
    text-decoration: line-through; 
    margin-left: 8px; 
    font-size: 14px; 
}
.special-tag {
    display: inline-block; 
    padding: 2px 8px; 
    border-radius: 4px;
    color: #fff; 
    font-size: 12px; 
    font-weight: 700;
    background: linear-gradient(135deg, #ff7d00 0%, #ff4500 100%);
    margin-right: 8px; 
    vertical-align: middle;
}

/* 视频列表高亮样式 */
.video-item.active { 
    color: #dc3545 !important; 
    font-weight: bold; 
}

/* 核心修复：播放器右侧剧集列表滚动样式 */
.video-right .video-source {
    max-height: 500px; /* 匹配播放器高度 */
    overflow-y: auto; /* 垂直滚动 */
    overflow-x: hidden; /* 隐藏水平滚动 */
    padding-right: 5px; /* 为滚动条预留空间 */
    height: 100%;
    position: relative;
    
    /* 性能优化 */
    will-change: transform;
    -webkit-overflow-scrolling: touch;
    
    /* 滚动渐变遮罩 - 初始隐藏 */
    mask-image: linear-gradient(to bottom, 
        transparent 0%, 
        black 20px, 
        black calc(100% - 20px), 
        transparent 100%
    );
    -webkit-mask-image: linear-gradient(to bottom, 
        transparent 0%, 
        black 20px, 
        black calc(100% - 20px), 
        transparent 100%
    );
}

/* 当不需要滚动时隐藏遮罩 */
.video-right .video-source.no-scroll-mask {
    mask-image: none;
    -webkit-mask-image: none;
}

/* 自定义滚动条样式（美化右侧列表滚动条） */
.video-right .video-source::-webkit-scrollbar {
    width: 6px; /* 滚动条宽度 */
}
.video-right .video-source::-webkit-scrollbar-track {
    background: #2c2c2c; /* 轨道背景（适配深色播放器） */
    border-radius: 10px;
}
.video-right .video-source::-webkit-scrollbar-thumb {
    background: #888; /* 滑块颜色 */
    border-radius: 10px;
    transition: background 0.2s ease;
}
.video-right .video-source::-webkit-scrollbar-thumb:hover {
    background: #dc3545; /* 悬停滑块颜色（适配主题色） */
}

/* Firefox滚动条样式 */
.video-right .video-source {
    scrollbar-width: thin;
    scrollbar-color: #888 #2c2c2c;
}

/* 剧集列表项优化（避免挤压） */
.video-right .video-list {
    margin-bottom: 5px;
    padding: 4px 0;
    contain: content; /* 提高渲染性能 */
    backface-visibility: hidden; /* 减少重绘 */
}
.video-right .video-item {
    display: block;
    width: 100%;
    transition: all 0.2s ease;
    outline: none; /* 为键盘导航准备，用JS处理焦点样式 */
}

/* 键盘导航焦点样式 */
.video-right .video-item:focus,
#tabVideoSource .video-item:focus {
    background-color: rgba(220, 53, 69, 0.1);
    border-left: 3px solid #dc3545;
    padding-left: 8px;
}

/* 滚动提示箭头（可选） */
.scroll-hint {
    position: absolute;
    right: 10px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 12px;
    z-index: 1;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.scroll-hint.up {
    top: 5px;
}

.scroll-hint.down {
    bottom: 5px;
}

.video-right .video-source.scrolling .scroll-hint,
#tabVideoSource.scrolling .scroll-hint {
    opacity: 0.8;
}

/* Toast提示样式 */
.toast-notification {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0,0,0,0.85);
    color: #fff;
    padding: 10px 20px;
    border-radius: 4px;
    z-index: 9999;
    display: none;
    transition: opacity 0.3s ease;
}

/* 视频详情页下载按钮样式 */
.video-download-btn {
    transition: all 0.3s ease;
}

.video-download-btn:hover {
    background-color: #f8f9fa;
    color: #dc3545;
    transform: translateY(-2px);
}

/* 视频详情页标签样式 */
.badge-danger { background-color: #dc3545; color: #fff; }
.badge-success { background-color: #28a745; color: #fff; }
.badge-warning { background-color: #ffc107; color: #212529; }
.badge-info { background-color: #17a2b8; color: #fff; }

/* 倒计时容器样式 */
.countdown-container {
    padding: 3px 8px; 
    border-radius: 4px; 
    background-color: #fef2f2;
    vertical-align: middle; 
    display: inline-block; 
    margin-left: 8px;
}
.countdown-time { 
    letter-spacing: 1px; 
    font-size: 14px; 
    color: #FFFFFF; 
    font-weight: bold; 
}

/* 视频操作区样式 */
.alert-dark {
    background-color: #343a40 !important;
    color: #fff;
}

/* 侧边栏购买须知样式 */
.text-sm {
    font-size: 0.875rem;
}

.list-disc {
    list-style-type: disc;
}

/* 视频详情页面包屑导航隐藏 */
@media (max-width: 767px) {
    .d-none.d-sm-block {
        display: none !important;
    }
}

/* 确保视频播放器在暗色背景下可见 */
.bg-dark {
    background-color: #1a1a1a !important;
}

/* 视频操作按钮组响应式调整 */
@media (max-width: 576px) {
    .float-right.mt-1 {
        float: none !important;
        text-align: center;
        margin-top: 15px !important;
    }
    
    .float-left {
        float: none !important;
        text-align: center;
    }
    
    .video-download-btn {
        margin-top: 10px;
        margin-left: 0 !important;
        display: inline-block;
    }
}

/* 视频内容区响应式调整 */
@media (max-width: 768px) {
    .col-md-9.pl-sm-1.pl-4.video-right {
        padding-left: 15px !important;
        padding-right: 15px;
    }
    
    .video-right .video-source {
        padding-right: 10px;
    }
}

/* ============================================
   视频详情页样式结束
   ============================================ */
/* ============================================
   项目列表页样式 - 合并到全局CSS
   ============================================ */

/* 筛选区域整体样式 */
.btn-group .btn {
    padding: 8px 18px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 20px !important;
    transition: all 0.3s ease;
    margin-right: 10px;
    border-width: 1px;
}

.btn-group .btn-outline-primary {
    color: #007bff;
    border-color: #007bff;
    background-color: transparent;
}

.btn-group .btn-outline-primary:hover {
    color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,123,255,0.2);
}

.btn-group .btn-outline-success {
    color: #28a745;
    border-color: #28a745;
    background-color: transparent;
}

.btn-group .btn-outline-success:hover {
    color: #fff !important;
    background-color: #28a745 !important;
    border-color: #28a745 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(40,167,69,0.2);
}

.btn-group .btn-outline-warning {
    color: #ffc107;
    border-color: #ffc107;
    background-color: transparent;
}

.btn-group .btn-outline-warning:hover {
    color: #fff !important;
    background-color: #ffc107 !important;
    border-color: #ffc107 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(255,193,7,0.2);
}

.btn-group .btn-outline-info {
    color: #17a2b8;
    border-color: #17a2b8;
    background-color: transparent;
}

.btn-group .btn-outline-info:hover {
    color: #fff !important;
    background-color: #17a2b8 !important;
    border-color: #17a2b8 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(23,162,184,0.2);
}

.btn-group .btn.active {
    color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
    box-shadow: 0 4px 8px rgba(0,123,255,0.2);
}

.btn-group .btn.active:hover {
    opacity: 0.95 !important;
    transform: translateY(0);
}

/* 项目标签样式 */
.project-tag {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.5);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
}

.project-tag.status-progress {
    background: linear-gradient(135deg, #ffc107 0%, #ff9800 100%);
}

.project-tag.status-completed {
    background: linear-gradient(135deg, #28a745 0%, #1e7e34 100%);
}

.project-tag.status-planning {
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
}

.project-tag.status-suspended {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
}

/* 项目进度标签 */
.project-progress-tag {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 2px 8px;
    border-radius: 4px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 999;
    background: rgba(0,0,0,0.6);
    backdrop-filter: blur(5px);
}

/* 项目卡片等高布局 - 重要修复 */
.row {
    display: flex;
    flex-wrap: wrap;
}

/* 项目卡片容器 */
.col-xl-4, .col-lg-4, .col-md-6, .col-sm-6, .col-12 {
    display: flex;
    margin-bottom: 30px;
}

/* 项目卡片内部链接 */
.col-xl-4 a, .col-lg-4 a, .col-md-6 a, .col-sm-6 a, .col-12 a {
    display: flex;
    width: 100%;
    text-decoration: none;
    color: inherit;
}

/* 项目卡片布局 */
.single-projects {
    height: 100%;
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    transition: all 0.3s ease;
    width: 100%;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
}

.single-projects:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.1) !important;
}

/* 项目图片区域 */
.project-img {
    position: relative;
    overflow: hidden;
    border-radius: 8px 8px 0 0;
    height: 180px; /* 固定高度 */
    flex-shrink: 0;
}

.project-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.single-projects:hover .project-img img {
    transform: scale(1.05);
}

/* 项目内容区域 */
.project-content {
    padding: 15px;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* 项目标题 */
.project-title {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 44px;
}

/* 点击次数 */
.project-hits {
    margin-bottom: 15px;
    text-align: center;
}

.hits-count {
    color: #666;
    font-size: 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fa;
    padding: 4px 12px;
    border-radius: 20px;
    border: 1px solid #e9ecef;
}

.hits-count i {
    margin-right: 5px;
    color: #ff6b6b;
}

/* 项目进度条 */
.project-progress-bar {
    margin-top: auto;
}

.progress {
    height: 6px;
    border-radius: 3px;
    background-color: #f0f0f0;
    overflow: hidden;
}

.progress-bar {
    border-radius: 3px;
    transition: width 0.5s ease;
}

.progress-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 5px;
    font-size: 12px;
    color: #666;
}

.progress-percent {
    font-weight: 600;
    color: #007bff;
}

/* 进度条颜色 */
.progress-bar.bg-success {
    background: linear-gradient(90deg, #28a745, #20c997);
}

.progress-bar.bg-warning {
    background: linear-gradient(90deg, #ffc107, #ff9800);
}

.progress-bar.bg-info {
    background: linear-gradient(90deg, #17a2b8, #0dcaf0);
}

.progress-bar.bg-secondary {
    background: linear-gradient(90deg, #6c757d, #495057);
}

/* 空状态 */
.project-empty-state {
    text-align: center;
    padding: 60px 20px;
    color: #6c757d;
    width: 100%;
}

.project-empty-state i {
    font-size: 48px;
    margin-bottom: 15px;
    color: #dee2e6;
}

.project-empty-state h5 {
    font-weight: 400;
    margin-bottom: 10px;
}

/* 统计卡片 */
.project-stats-card {
    border: none;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
    margin-bottom: 20px;
}

.project-stats-card .card-header {
    background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
    border: none;
    color: white;
    font-weight: 600;
}

.project-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    text-align: center;
}

.stat-item {
    padding: 10px 5px;
}

.stat-value {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 5px;
}

.stat-label {
    font-size: 12px;
    color: #6c757d;
}

.stat-value.total { color: #007bff; }
.stat-value.progress { color: #ffc107; }
.stat-value.completed { color: #28a745; }

/* 信息行样式 */
.project-info-row {
    margin-top: 8px;
}

/* 状态徽章颜色 */
.badge-secondary {
    background: linear-gradient(135deg, #6c757d, #495057);
    color: white;
}

.badge-primary {
    background: linear-gradient(135deg, #007bff, #0056b3);
    color: white;
}

.badge-success {
    background: linear-gradient(135deg, #28a745, #1e7e34);
    color: white;
}

.badge-info {
    background: linear-gradient(135deg, #17a2b8, #0dcaf0);
    color: white;
}

.badge-warning {
    background: linear-gradient(135deg, #ffc107, #ff9800);
    color: #000;
}

.badge-danger {
    background: linear-gradient(135deg, #dc3545, #c82333);
    color: white;
}

/* 图片状态标签 */
.project-tag.status-0 { 
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%); 
}

.project-tag.status-1 { 
    background: linear-gradient(135deg, #ffc107 0%, #ff9800 100%); 
}

.project-tag.status-2 { 
    background: linear-gradient(135deg, #28a745 0%, #1e7e34 100%); 
}

.project-tag.status-3 { 
    background: linear-gradient(135deg, #17a2b8 0%, #0dcaf0 100%); 
}

.project-tag.status-4 { 
    background: linear-gradient(135deg, #fd7e14 0%, #e8590c 100%); 
}

.project-tag.status-5 { 
    background: linear-gradient(135deg, #6f42c1 0%, #6610f2 100%); 
}

.project-tag.status-6 { 
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%); 
}

/* 移动端适配 */
@media (max-width: 768px) {
    .col-sm-6, .col-12 {
        margin-bottom: 20px;
    }
    
    .project-img {
        height: 160px;
    }
    
    .project-title {
        font-size: 15px;
        min-height: 42px;
    }
    
    .stat-value {
        font-size: 20px;
    }
    
    .project-stats-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 10px;
    }
}

@media (max-width: 576px) {
    .project-img {
        height: 140px;
    }
    
    .project-title {
        font-size: 14px;
        min-height: 40px;
    }
    
    .btn-group .btn {
        padding: 6px 12px;
        font-size: 13px;
        margin-right: 5px;
        margin-bottom: 5px;
    }
    
    
    .stat-value {
        font-size: 18px;
    }
    
    .project-stats-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }
}

/* ============================================
   项目列表页样式结束
   ============================================ */
/* ============================================
   项目详情页样式 - 合并到全局CSS
   ============================================ */

/* 整体布局 */
.project-detail-vertical {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

/* 图片区域 */
.image-section-vertical {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    margin-bottom: 5px;
    background: #f8f9fa;
}

.main-image-vertical {
    width: 100%;
    height: 600px;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.main-image-vertical:hover {
    transform: scale(1.03);
}

/* 状态标签 */
.status-overlay-vertical {
    position: absolute;
    top: 20px;
    left: 20px;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    color: white;
    z-index: 10;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    display: flex;
    align-items: center;
}

/* 缩略图区域 */
.thumbnail-section-vertical {
    margin-top: 15px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 8px;
}

.thumbnail-container-vertical {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    padding: 5px;
    scrollbar-width: thin;
    scrollbar-color: #007bff #f1f1f1;
}

.thumbnail-container-vertical::-webkit-scrollbar {
    height: 6px;
}

.thumbnail-container-vertical::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}

.thumbnail-container-vertical::-webkit-scrollbar-thumb {
    background: #007bff;
    border-radius: 3px;
}

.thumbnail-item-vertical {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 6px;
    overflow: hidden;
    cursor: pointer;
    border: 3px solid transparent;
    opacity: 0.7;
    transition: all 0.3s ease;
}

.thumbnail-item-vertical:hover,
.thumbnail-item-vertical.active {
    border-color: #007bff;
    opacity: 1;
    transform: translateY(-3px);
    box-shadow: 0 4px 8px rgba(0,123,255,0.3);
}

.thumbnail-item-vertical img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 信息区域 */
.info-section-vertical {
    background: white;
    border-radius: 10px;
    padding: 30px;
    box-shadow: 0 3px 15px rgba(0,0,0,0.08);
    margin-top: 10px;
}

.project-title-vertical {
    font-size: 24px;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
    line-height: 1.3;
    border-bottom: 2px solid #007bff;
    padding-bottom: 15px;
}

.project-description-vertical {
    color: #666;
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 25px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #007bff;
}

/* 信息网格布局 - 2行4列 */
.info-grid-vertical {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    margin-bottom: 30px;
}

.info-card-vertical {
    background: white;
    border-radius: 8px;
    padding: 12px;
    border: 1px solid #e9ecef;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    min-height: 70px;
}

.info-card-vertical:hover {
    border-color: #007bff;
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0,123,255,0.1);
}

.info-icon-vertical {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    flex-shrink: 0;
}

.info-icon-vertical i {
    font-size: 18px;
    color: white;
}

.info-content-vertical {
    flex: 1;
    min-width: 0;
}

.info-label-vertical {
    font-size: 11px;
    color: #6c757d;
    margin-bottom: 4px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.info-value-vertical {
    font-size: 14px;
    font-weight: 600;
    color: #343a40;
    line-height: 1.4;
}

/* 地址特殊处理 */
.location-value {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    cursor: help;
}

/* 进度条区域 */
.progress-section-vertical {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 12px;
    padding: 25px;
    margin: 25px 0;
    border: 1px solid #dee2e6;
}

.progress-header-vertical {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.progress-title-vertical {
    font-weight: 600;
    color: #333;
    font-size: 18px;
    display: flex;
    align-items: center;
}

.progress-title-vertical i {
    margin-right: 10px;
    color: #28a745;
}

.progress-percent-vertical {
    font-weight: 700;
    font-size: 24px;
    color: #28a745;
}

.progress-bar-wrapper-vertical {
    height: 14px;
    background: #dee2e6;
    border-radius: 7px;
    overflow: hidden;
    margin-bottom: 15px;
    position: relative;
}

.progress-fill-vertical {
    height: 100%;
    background: linear-gradient(90deg, #28a745, #20c997);
    border-radius: 7px;
    transition: width 1.5s ease;
    position: relative;
    overflow: hidden;
}

.progress-fill-vertical::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, 
        rgba(255,255,255,0) 0%, 
        rgba(255,255,255,0.3) 50%, 
        rgba(255,255,255,0) 100%);
    background-size: 200% 100%;
    animation: progress-shimmer 2s infinite linear;
}

@keyframes progress-shimmer {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

/* 分享区域 */
.share-section {
    border-top: 1px solid #e9ecef;
    padding-top: 25px;
    margin-top: 25px;
}

/* 内容区域 */
.content-section {
    background: white;
    border-radius: 10px;
    padding: 25px;
    margin-top: 20px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

/* 上一篇/下一篇导航 */
.page-navigation {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #e9ecef;
}

/* 项目详情页状态颜色定义 */
.status-0 { background: #6c757d; }
.status-1 { background: #ffc107; }
.status-2 { background: #28a745; }
.status-3 { background: #17a2b8; }
.status-4 { background: #fd7e14; }
.status-5 { background: #6f42c1; }
.status-6 { background: #dc3545; }

.badge.status-0 { background: #6c757d; }
.badge.status-1 { background: #ffc107; color: #000; }
.badge.status-2 { background: #28a745; }
.badge.status-3 { background: #17a2b8; }
.badge.status-4 { background: #fd7e14; }
.badge.status-5 { background: #6f42c1; }
.badge.status-6 { background: #dc3545; }

/* 项目详情页图标背景色定义 */
.icon-bg-primary { background: linear-gradient(135deg, #007bff 0%, #0056b3 100%); }
.icon-bg-success { background: linear-gradient(135deg, #28a745 0%, #1e7e34 100%); }
.icon-bg-warning { background: linear-gradient(135deg, #ffc107 0%, #ff9800 100%); }
.icon-bg-secondary { background: linear-gradient(135deg, #6c757d 0%, #495057 100%); }
.icon-bg-purple { background: linear-gradient(135deg, #6f42c1 0%, #6610f2 100%); }
.icon-bg-orange { background: linear-gradient(135deg, #fd7e14 0%, #e8590c 100%); }
.icon-bg-info { background: linear-gradient(135deg, #17a2b8 0%, #0dcaf0 100%); }
.icon-bg-danger { background: linear-gradient(135deg, #dc3545 0%, #c82333 100%); }

/* 响应式调整 */
@media (max-width: 1200px) {
    .info-grid-vertical {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 992px) {
    .main-image-vertical {
        height: 350px;
    }
    
    .project-title-vertical {
        font-size: 22px;
    }
}

@media (max-width: 768px) {
    .main-image-vertical {
        height: 300px;
    }
    
    .info-grid-vertical {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    
    .info-section-vertical {
        padding: 20px;
    }
    
    .project-title-vertical {
        font-size: 20px;
        padding-bottom: 12px;
        margin-bottom: 12px;
    }
    
    .project-description-vertical {
        padding: 12px;
        margin-bottom: 20px;
    }
    
    .progress-section-vertical {
        padding: 20px;
        margin: 20px 0;
    }
    
    .thumbnail-item-vertical {
        width: 70px;
        height: 70px;
    }
    
    .progress-percent-vertical {
        font-size: 20px;
    }
}

@media (max-width: 576px) {
    .project-detail-vertical {
        gap: 20px;
    }
    
    .main-image-vertical {
        height: 250px;
    }
    
    .project-title-vertical {
        font-size: 18px;
    }
    
    .info-icon-vertical {
        width: 36px;
        height: 36px;
    }
    
    .info-icon-vertical i {
        font-size: 16px;
    }
    
    .info-value-vertical {
        font-size: 13px;
    }
    
    .progress-title-vertical {
        font-size: 16px;
    }
    
    .progress-bar-wrapper-vertical {
        height: 12px;
    }
    
    .thumbnail-item-vertical {
        width: 60px;
        height: 60px;
    }
    
    .page-navigation {
        flex-direction: column;
        gap: 15px;
    }
}

/* 移动端优化 */
@media (max-width: 480px) {
    .main-image-vertical {
        height: 200px;
    }
    
    .info-card-vertical {
        padding: 10px;
    }
    
    .thumbnail-container-vertical {
        gap: 8px;
    }
    
    .thumbnail-item-vertical {
        width: 50px;
        height: 50px;
        border-width: 2px;
    }
    
    .project-title-vertical {
        font-size: 16px;
        border-bottom-width: 1px;
    }
}

/* 平板横屏适配 */
@media (min-width: 769px) and (max-width: 1024px) and (orientation: landscape) {
    .info-grid-vertical {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* 避免与全局样式冲突 */
.project-detail-vertical .badge {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 4px;
    font-weight: 600;
}

/* 确保详情页图片加载备用样式 */
.main-image-vertical[src*="nopic.png"] {
    background: #f5f5f5;
    object-fit: contain !important;
    padding: 30px;
}

/* 滚动条美化 */
.thumbnail-container-vertical::-webkit-scrollbar-thumb:hover {
    background: #0056b3;
}

/* 打印样式 */
@media print {
    .project-detail-vertical {
        gap: 15px;
    }
    
    .status-overlay-vertical,
    .thumbnail-section-vertical,
    .share-section {
        display: none;
    }
    
    .main-image-vertical {
        height: auto;
        max-height: 300px;
    }
    
    .info-card-vertical {
        break-inside: avoid;
        box-shadow: none;
        border: 1px solid #ddd;
    }
    
    .info-grid-vertical {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
}

/* ============================================
   项目详情页样式结束
   ============================================ */
/* ============================================
   下载列表页样式 - 合并到全局CSS
   ============================================ */

/* 软件信息标签样式 */
.software-badge {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    margin-right: 5px;
    margin-bottom: 3px;
}

.software-type-badge {
    background: linear-gradient(135deg, #6a11cb 0%, #2575fc 100%);
    color: white;
}

.software-platform-badge {
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
    color: white;
}

.software-language-badge {
    background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
    color: white;
}

.software-license-badge {
    background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
    color: white;
}

.software-architecture-badge {
    background: linear-gradient(135deg, #fa709a 0%, #fee140 100%);
    color: white;
}

.software-portable-badge {
    background: linear-gradient(135deg, #30cfd0 0%, #330867 100%);
    color: white;
}

/* 评分样式 */
.software-rating {
    color: #ffc107;
    font-size: 14px;
}

.rating-number {
    color: #666;
    font-size: 13px;
    font-weight: 600;
    margin-left: 5px;
}

/* 软件规格信息 */
.software-specs {
    font-size: 13px;
    color: #666;
}

.software-specs span {
    margin-right: 10px;
    display: inline-block;
}

.software-specs i {
    color: #999;
    margin-right: 3px;
}

/* 卡片底部信息 */
.card-footer-info {
    border-top: 1px solid #eee;
    padding-top: 10px;
    margin-top: 10px;
    font-size: 12px;
}

/* 列表项间距优化 */
.list-item {
    margin-bottom: 15px;
}

/* ========== 卡片内图文环绕样式 ========== */
/* 图片浮动样式（核心：实现文字环绕） */
.card-img-wrap {
    float: left;
    width: 35%; /* 图片宽度，可调整 */
    margin-right: 15px; /* 图片右侧间距 */
    margin-bottom: 10px; /* 图片底部间距 */
}

.card-img-wrap img {
    max-height: 180px;
    object-fit: cover;
    border-radius: 0.5rem;
    width: 100%;
}

/* 清除浮动，避免卡片高度塌陷 */
.card-content-wrap::after {
    content: "";
    display: table;
    clear: both;
}

/* 卡片内部分区样式 */
.card-content-wrap {
    display: block;
    width: 100%;
}

/* 卡片标题优化 */
.card-content-wrap .card-title {
    font-size: 1rem;
    margin-bottom: 12px;
    line-height: 1.4;
}

/* 标签容器优化 */
.card-content-wrap .mb-2 {
    margin-bottom: 10px;
}

/* 描述区域优化 */
.card-content-wrap .card-text {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-bottom: 10px;
    color: #666;
}

/* 价格区域优化 */
.card-content-wrap .special-price {
    font-size: 1.1rem;
    font-weight: bold;
    color: #dc3545;
}

.card-content-wrap .original-price {
    color: #6c757d;
    text-decoration: line-through;
    margin-left: 5px;
    font-size: 0.9rem;
}

/* 底部信息区域优化 */
.card-content-wrap .list-item-meta {
    color: #6c757d;
    font-size: 0.85rem;
}

.card-content-wrap .list-item-meta i {
    width: 16px;
    margin-right: 3px;
}

/* 响应式：移动端取消浮动，图片占满宽度 */
@media (max-width: 768px) {
    .card-img-wrap {
        float: none;
        width: 100%;
        margin-right: 0;
        margin-bottom: 15px;
    }
    
    .software-badge {
        font-size: 11px;
        padding: 2px 6px;
        margin-bottom: 2px;
        margin-right: 3px;
    }
    
    .software-specs {
        font-size: 12px;
    }
    
    .software-specs span {
        margin-right: 8px;
        margin-bottom: 3px;
    }
    
    .card-content-wrap .card-title {
        font-size: 0.95rem;
        margin-bottom: 10px;
    }
    
    .card-content-wrap .card-text {
        font-size: 0.85rem;
    }
    
    .rating-number {
        font-size: 12px;
    }
    
    .card-footer-info {
        padding-top: 8px;
        margin-top: 8px;
        font-size: 11px;
    }
}

/* 更小屏幕优化 */
@media (max-width: 576px) {
    .software-badge {
        font-size: 10px;
        padding: 1px 4px;
        margin-right: 2px;
        margin-bottom: 1px;
    }
    
    .software-specs {
        font-size: 11px;
    }
    
    .software-specs span {
        margin-right: 6px;
        margin-bottom: 2px;
        display: inline-block;
    }
    
    .software-rating {
        font-size: 12px;
    }
    
    .rating-number {
        font-size: 11px;
        margin-left: 3px;
    }
    
    .card-img-wrap img {
        max-height: 150px;
    }
    
    .list-item {
        margin-bottom: 12px;
    }
}

/* 平板横屏适配 */
@media (min-width: 769px) and (max-width: 1024px) and (orientation: landscape) {
    .card-img-wrap {
        width: 40%; /* 横屏时图片稍大 */
    }
    
    .card-content-wrap .card-title {
        font-size: 1.05rem;
    }
}

/* 大屏桌面优化 */
@media (min-width: 1200px) {
    .card-img-wrap {
        width: 30%; /* 大屏幕图片稍小 */
    }
    
    .card-content-wrap .card-title {
        font-size: 1.1rem;
        margin-bottom: 15px;
    }
    
    .card-content-wrap .card-text {
        font-size: 0.95rem;
        line-height: 1.6;
    }
    
    .software-badge {
        padding: 4px 10px;
        margin-right: 8px;
        margin-bottom: 5px;
    }
    
    .software-specs {
        font-size: 14px;
    }
}

/* 打印样式 */
@media print {
    .card-img-wrap {
        float: none;
        width: 50%;
        margin: 0 auto 15px auto;
        display: block;
    }
    
    .software-badge {
        border: 1px solid #333;
        background: none !important;
        color: #000 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    
    .card-footer-info {
        border-top: 1px solid #ccc;
    }
}

/* 夜间模式适配 */
@media (prefers-color-scheme: dark) {
    .card-content-wrap .card-text {
        color: #aaa;
    }
    
    .software-specs {
        color: #aaa;
    }
    
    .software-specs i {
        color: #888;
    }
    
    .rating-number {
        color: #aaa;
    }
    
    .card-footer-info {
        border-top-color: #444;
    }
    
    .card-content-wrap .list-item-meta {
        color: #aaa;
    }
}

/* 无障碍优化 */
.software-badge:focus,
.card-img-wrap img:focus,
.card-content-wrap .card-title a:focus {
    outline: 2px solid #007bff;
    outline-offset: 2px;
}

/* 高对比度模式 */
@media (prefers-contrast: high) {
    .software-badge {
        border: 2px solid #000;
    }
    
    .card-footer-info {
        border-top-width: 2px;
    }
}

/* ============================================
   下载列表页样式结束
   ============================================ */

/* ============================================
   下载详情页样式 - 新增
   ============================================ */

/* 下载详情页状态颜色定义 */
.badge-danger { background-color: #dc3545; color: #fff; }
.badge-success { background-color: #28a745; color: #fff; }
.badge-warning { background-color: #ffc107; color: #212529; }
.badge-info { background-color: #17a2b8; color: #fff; }
.badge-primary { background-color: #007bff; color: #fff; }
.badge-secondary { background-color: #6c757d; color: #fff; }

/* 特价与倒计时 */
.countdown-container {
    padding: 3px 8px;
    border-radius: 4px;
    background-color: #fef2f2;
    vertical-align: middle;
    display: inline-block;
    margin-left: 8px;
}
.countdown-time {
    letter-spacing: 1px;
    font-size: 14px;
    color: #FFFFFF;
    font-weight: bold;
}
.special-price { 
    color: #dc3545; 
    font-weight: bold; 
    font-size: 18px; 
}
.original-price { 
    color: #6c757d; 
    text-decoration: line-through; 
    margin-left: 8px; 
    font-size: 14px; 
}
.special-tag {
    display: inline-block;
    padding: 0.25em 0.4em;
    border-radius: 0.25rem;
    color: #fff;
    font-size: 75%;
    font-weight: 700;
    background: linear-gradient(135deg, #ff7d00 0%, #ff4500 100%);
    margin-right: 0.5rem;
    vertical-align: baseline;
    line-height: 1;
}

/* 软件信息标签 */
.software-tag {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    margin-right: 5px;
    margin-bottom: 5px;
}
.tag-license { 
    background-color: #e3f2fd; 
    color: #1976d2; 
    border: 1px solid #bbdefb; 
}
.tag-platform { 
    background-color: #f3e5f5; 
    color: #7b1fa2; 
    border: 1px solid #e1bee7; 
}
.tag-architecture { 
    background-color: #e8f5e8; 
    color: #388e3c; 
    border: 1px solid #c8e6c9; 
}
.tag-portable { 
    background-color: #fff3e0; 
    color: #f57c00; 
    border: 1px solid #ffe0b2; 
}
.tag-version { 
    background-color: #e8eaf6; 
    color: #303f9f; 
    border: 1px solid #c5cae9; 
}
.tag-language { 
    background-color: #f1f8e9; 
    color: #689f38; 
    border: 1px solid #dcedc8; 
}

/* 软件评分 */
.rating-stars { color: #ffc107; }
.rating-value { font-weight: bold; color: #ff9800; }

/* 文件类型图标 */
.file-icon {
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    margin-right: 8px;
    font-size: 12px;
    color: white;
}
.file-zip { background-color: #ff6b35; }
.file-pdf { background-color: #e74c3c; }
.file-doc { background-color: #3498db; }
.file-xls { background-color: #27ae60; }
.file-ppt { background-color: #e67e22; }
.file-img { background-color: #9b59b6; }
.file-default { background-color: #95a5a6; }

/* 软件预览 */
.preview-thumb { 
    transition: all 0.3s ease; 
    cursor: pointer; 
}
.preview-thumb:hover { 
    transform: scale(1.05); 
    box-shadow: 0 2px 8px rgba(0,0,0,0.15); 
}
.preview-thumb.active { 
    border: 2px solid #007bff !important; 
}

/* 软件规格 */
.software-specs .spec-item {
    border-bottom: 1px solid #eee;
    padding: 8px 0;
    display: flex;
    justify-content: space-between;
}
.software-specs .spec-item:last-child { border-bottom: none; }
.software-specs .spec-item .text-muted { margin-bottom: 0; }

/* 系统要求响应式处理 */
.system-req-item {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
    align-items: flex-start;
}

.system-req-label {
    flex: 0 0 auto;
    min-width: 80px;
    color: #6c757d;
    padding-right: 10px;
    margin-bottom: 5px;
}

.system-req-content {
    flex: 1 1 auto;
    min-width: 200px;
    word-wrap: break-word;
    word-break: break-word;
    white-space: pre-wrap;
    line-height: 1.6;
}

/* 优化购买按钮样式 */
#buyFile {
    padding: 8px 20px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    border: none !important;
    background: linear-gradient(135deg, #dc3545 0%, #b02a37 100%) !important;
    box-shadow: 0 2px 8px rgba(220, 53, 69, 0.2) !important;
    transition: all 0.3s ease !important;
    white-space: nowrap;
}
#buyFile:hover {
    background: linear-gradient(135deg, #bb2d3b 0%, #9a2530 100%) !important;
    box-shadow: 0 4px 12px rgba(220, 53, 69, 0.3) !important;
    transform: translateY(-1px) !important;
}
#buyFile:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 4px rgba(220, 53, 69, 0.2) !important;
}

/* 购买按钮内价格独立背景样式 */
#buyFile .special-price {
    color: #ffffff !important;
    font-size: 14px !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    margin-right: 4px !important;
    display: inline-block !important;
}
#buyFile .original-price {
    color: #f1f1f1 !important;
    font-size: 12px !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    text-decoration: line-through !important;
    display: inline-block !important;
}

/* 移动端适配 */
@media (max-width: 768px) {
    .system-req-item {
        display: block;
    }
    .system-req-label {
        display: block;
        margin-bottom: 5px;
        min-width: auto;
    }
    .system-req-content {
        min-width: auto;
    }
}

/* ============================================
   下载详情页样式结束
   ============================================ */
   /* ============================================
   团队列表页样式 - 合并到全局CSS
   ============================================ */

/* 团队卡片样式 (与其他列表页统一) */
.team-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 0.25rem;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    transition: box-shadow 0.3s ease-in-out;
    height: 100%; /* 确保卡片高度一致 */
    overflow: hidden; /* 防止内容溢出圆角 */
}

.team-card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1); /* 统一的hover阴影效果 */
}

.team-card .card-img-top {
    width: 100%;
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
    object-fit: cover; /* 保证图片比例正确 */
    /* height: 200px; 由layout.css的ratio类控制 */ /* 统一图片高度 */
}

.team-card .card-body {
    flex: 1 1 auto;
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
}

.team-card .card-text {
    color: #6c757d; /* 统一的描述文本颜色 */
    font-size: 0.9rem;
    margin-bottom: 1rem;
    flex-grow: 1; /* 让描述文本占据可用空间，使按钮对齐 */
    line-height: 1.5;
}

.team-card .card-title {
    margin-bottom: 0.75rem;
    font-size: 1.1rem; /* 统一的标题字体大小 */
    font-weight: 600;
    color: #333;
    line-height: 1.4;
}

/* 团队位置信息样式 */
.team-card .team-position {
    color: #6c757d;
    font-size: 0.85rem;
    margin-bottom: 0.5rem;
    display: flex;
    flex-direction: column;
}

.team-card .team-position span:first-child {
    font-weight: 500;
    color: #495057;
}

/* 统一的按钮样式 */
.team-card .btn-view {
    display: block;
    width: 100%;
    background-color: #28a745;
    color: #fff !important;
    border-color: #28a745;
    border-radius: 20px !important; /* 统一的圆润按钮 */
    font-weight: 500;
    padding: 0.375rem 0.75rem;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
    margin-top: auto;
}

.team-card .btn-view:hover {
    background-color: #218838;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(40, 167, 69, 0.2);
}

/* 团队列表页网格布局优化 */
.team-list-grid .col-6,
.team-list-grid .col-md-3 {
    display: flex;
    margin-bottom: 30px;
}

.team-list-grid a {
    display: flex;
    width: 100%;
    text-decoration: none;
    color: inherit;
}

/* 图片加载失败样式 */
.team-card .card-img-top[src*="nopic.png"] {
    background: #f8f9fa;
    object-fit: contain;
    padding: 20px;
}

/* 团队列表页响应式调整 */
@media (max-width: 992px) {
    .team-card .card-img-top {
        height: 180px;
    }
    
    .team-list-grid .col-md-3 {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

@media (max-width: 768px) {
    .team-card .card-img-top {
        height: 160px;
    }
    
    .team-card .card-body {
        padding: 1rem;
    }
    
    .team-card .card-title {
        font-size: 1rem;
        margin-bottom: 0.5rem;
    }
    
    .team-card .card-text {
        font-size: 0.85rem;
        margin-bottom: 0.75rem;
    }
    
    .team-list-grid .col-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

@media (max-width: 576px) {
    .team-card .card-img-top {
        height: 140px;
    }
    
    .team-card .card-body {
        padding: 0.75rem;
    }
    
    .team-card .btn-view {
        padding: 0.25rem 0.5rem;
        font-size: 0.875rem;
    }
    
    .team-card .card-title {
        font-size: 0.95rem;
    }
    
    .team-card .card-text {
        font-size: 0.8rem;
        line-height: 1.4;
    }
}

/* 团队侧边栏热门产品样式 */







/* 团队列表页筛选区域 - 复用商品列表页样式 */
.team-filter .filter-container {
    background-color: #f8f9fa;
    border-radius: 8px;
    padding: 15px 20px;
    margin-bottom: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.team-filter .filter-title {
    font-size: 15px;
    font-weight: 600;
    color: #333;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
}

.team-filter .filter-title i {
    color: #28a745;
    margin-right: 8px;
}

/* 团队分类列表样式 */
.team-categories .nav-list li a {
    padding: 8px 15px;
    border-radius: 4px;
    margin-bottom: 2px;
    transition: all 0.3s ease;
    display: block;
    color: #555;
    text-decoration: none;
}

.team-categories .nav-list li a:hover {
    background: #f8f9fa;
    color: #28a745;
    padding-left: 20px;
}

.team-categories .nav-list li a.active {
    background: rgba(40, 167, 69, 0.1);
    color: #28a745;
    font-weight: 500;
    border-left: 3px solid #28a745;
}

/* 团队列表页无数据提示 */
.team-no-data {
    padding: 50px 0;
    text-align: center;
    color: #666;
    background: #f8f9fa;
    border-radius: 8px;
}

.team-no-data i {
    font-size: 24px;
    color: #999;
    margin-bottom: 15px;
}

.team-no-data h5 {
    font-weight: 400;
    margin-bottom: 10px;
}

/* 团队面包屑导航 */
.team-breadcrumb a {
    color: #666;
    text-decoration: none;
    transition: color 0.3s ease;
}

.team-breadcrumb a:hover {
    color: #28a745;
}

.team-breadcrumb .fa-angle-right {
    color: #999;
    margin: 0 5px;
}

/* 团队搜索表单 */
.team-search .search-input {
    border-radius: 50px !important;
    border: 1px solid #ddd;
    transition: all 0.3s ease;
}

.team-search .search-input:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.team-search .search-submit {
    background: #28a745;
    color: #fff;
    border-radius: 20px !important;
    transition: all 0.3s ease;
}

.team-search .search-submit:hover {
    background: #218838;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(40, 167, 69, 0.3);
}

/* 团队列表页分页样式 - 复用商品列表页样式 */
.team-pagination .pagination {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 5px;
}

.team-pagination .pagination li {
    list-style: none;
}

.team-pagination .pagination li a,
.team-pagination .pagination li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    color: #666;
    transition: all 0.3s ease;
    text-decoration: none;
}

.team-pagination .pagination li.active span {
    background: #28a745;
    color: #fff;
    font-weight: 600;
    border-color: #28a745;
}

.team-pagination .pagination li a:hover {
    background: #28a745;
    color: #fff;
    border-color: #28a745;
    transform: translateY(-2px);
}

.team-pagination .pagination li.disabled span {
    background: #f4f4f4;
    cursor: not-allowed;
    opacity: 0.6;
}

/* 团队列表页标题区域 */
.team-page-title {
    position: relative;
    margin-bottom: 30px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
}

.team-page-title h1 {
    font-size: 24px;
    font-weight: 600;
    color: #333;
    margin-bottom: 5px;
}

.team-page-title .badge {
    background: #28a745;
    color: #fff;
    font-size: 12px;
    padding: 3px 8px;
    border-radius: 4px;
    margin-left: 10px;
}

/* 团队标签样式 */
.team-tag {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
    margin-right: 5px;
    margin-bottom: 5px;
}

.team-tag.position {
    background: linear-gradient(135deg, #6a11cb 0%, #2575fc 100%);
    color: white;
}

.team-tag.specialty {
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
    color: white;
}

.team-tag.experience {
    background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
    color: white;
}

/* 团队卡片悬停动画优化 */
.team-card {
    transform: translateY(0);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.team-card:hover {
    transform: translateY(-5px);
}

/* 团队列表页性能优化 */
.team-card img {
    will-change: transform;
}

.team-card .card-body {
    backface-visibility: hidden;
}

/* 团队列表页打印样式 */
@media print {
    .team-card {
        break-inside: avoid;
        box-shadow: none !important;
        border: 1px solid #ddd !important;
    }
    
    .team-card .btn-view {
        display: none;
    }
    
    .team-card .card-img-top {
        max-height: 150px;
    }
}

/* 团队列表页暗色模式适配 */
@media (prefers-color-scheme: dark) {
    .team-card {
        background-color: #2a2a2a;
        border-color: #444;
    }
    
    .team-card .card-title {
        color: #eee;
    }
    
    .team-card .card-text {
        color: #aaa;
    }
    
    .team-card .team-position span:first-child {
        color: #ccc;
    }
    
    .team-card:hover {
        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.3);
    }
}

/* 团队列表页无障碍优化 */
.team-card a:focus {
    outline: 2px solid #28a745;
    outline-offset: 2px;
    border-radius: 0.25rem;
}

.team-card .btn-view:focus {
    outline: 2px solid #fff;
    outline-offset: 2px;
}

/* ============================================
   团队列表页样式结束
   ============================================ */
   /* ============================================
   团队详情页样式 - 合并到全局CSS
   ============================================ */

/* 团队详情页通用样式 */
.object-fit-cover {
    object-fit: cover; 
    width: 100%;
    height: 100%;
}

/* 社交图标基础样式 */
.social-icon {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    margin-right: 10px;
    border-radius: 5px;
    color: #fff;
    font-size: 20px;
    transition: all 0.3s ease;
    cursor: pointer;
}
.social-icon:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}

/* 平台专属背景色 */
.contact-qr { background-color: #07C160; } /* 通讯录 */
.wechat { background-color: #07C160; } /* 微信绿 */
.douyin { background-color: #FF1A1A; } /* 抖音红 */
.kuaishou { background-color: #FF2442; } /* 快手红 */
.work-wechat { background-color: #2AAB7F; } /* 企业微信绿 */
.dingtalk { background-color: #0080FF; }   /* 钉钉蓝 */
.email { background-color: #EA4335; }      /* Gmail红 */

/* 定制 Tooltip 弹出框样式 */
.team-tooltip { border: none; }
.tooltip-inner {
    background-color: #fff;
    color: #333;
    border-radius: 8px;
    padding: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    max-width: 200px;
}
.tooltip.bs-tooltip-top .arrow::before { border-top-color: #fff; }
.tooltip.bs-tooltip-bottom .arrow::before { border-bottom-color: #fff; }
.tooltip.bs-tooltip-left .arrow::before { border-left-color: #fff; }
.tooltip.bs-tooltip-right .arrow::before { border-right-color: #fff; }

/* 二维码容器样式 */
.qr-code-container {
    position: relative;
    transition: transform 0.3s ease;
    border-radius: 10px;
    overflow: hidden;
}
.qr-code-container:hover {
    transform: scale(1.05);
}
.qr-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 10px;
}
.qr-code-container:hover .qr-overlay {
    opacity: 1;
}

/* 复制按钮动画 */
.copy-contact {
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}
.copy-contact:hover {
    transform: translateY(-2px);
}
.copy-contact.copied::after {
    content: '✓ 已复制';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #28a745;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
}

/* 员工信息卡片样式 */
.team-info-item {
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;
}
.team-info-item:last-child {
    border-bottom: none;
}
.team-info-label {
    color: #666;
    min-width: 100px;
    display: inline-block;
}
.team-info-value {
    color: #333;
    font-weight: 500;
}

/* 联系方式卡片 */
.contact-card {
    border: 1px solid #e9ecef;
    border-radius: 10px;
    transition: all 0.3s ease;
    height: 100%;
}
.contact-card:hover {
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
    transform: translateY(-5px);
}
.contact-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 15px;
    font-size: 24px;
    color: white;
}

/* Toast提示动画 */
@keyframes slideIn {
    from { 
        opacity: 0;
        transform: translateX(100%);
    }
    to { 
        opacity: 1;
        transform: translateX(0);
    }
}

/* 工作标签 */
.work-tag {
    display: inline-block;
    padding: 3px 10px;
    background: linear-gradient(135deg, #6a11cb 0%, #2575fc 100%);
    color: white;
    border-radius: 20px;
    font-size: 12px;
    margin-right: 5px;
    margin-bottom: 5px;
}

/* 部门标签 */
.department-badge {
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
    color: white;
    padding: 3px 12px;
    border-radius: 15px;
    font-size: 13px;
    font-weight: 500;
}

/* 团队详情页模态框样式 */
#qrPreviewModal .modal-content {
    border-radius: 12px;
    overflow: hidden;
}
#qrPreviewModal .modal-header {
    background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
    border-bottom: none;
}
#qrPreviewModal #previewQrImage {
    max-height: 350px;
    border: 1px solid #eee;
    padding: 10px;
    background: white;
}
#qrPreviewModal .btn-group .btn {
    border-radius: 6px;
    font-weight: 500;
}

/* 团队详情页自定义Toast */
.custom-toast {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 9999;
    min-width: 300px;
    background: #28a745;
    color: white;
    padding: 15px 20px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    animation: slideIn 0.3s ease;
}
.custom-toast .btn-close {
    color: white;
    opacity: 0.8;
    transition: opacity 0.3s ease;
}
.custom-toast .btn-close:hover {
    opacity: 1;
}

/* 团队详情页响应式调整 */
@media (max-width: 768px) {
    .qr-code-container {
        max-width: 150px !important;
    }
    .qr-code-container img {
        width: 140px !important;
        height: 140px !important;
    }
    .contact-card {
        margin-bottom: 20px;
    }
    .social-icon {
        width: 35px;
        height: 35px;
        line-height: 35px;
        font-size: 16px;
        margin-right: 8px;
        margin-bottom: 8px;
    }
    .team-info-label {
        min-width: 80px;
        font-size: 14px;
    }
    .team-info-value {
        font-size: 14px;
    }
    #qrPreviewModal .modal-dialog {
        margin: 10px;
    }
    #qrPreviewModal .btn-group {
        flex-direction: column;
        width: 100%;
    }
    #qrPreviewModal .btn-group .btn {
        width: 100%;
        margin-bottom: 8px;
    }
}

@media (max-width: 576px) {
    .social-icon {
        width: 30px;
        height: 30px;
        line-height: 30px;
        font-size: 14px;
        margin-right: 6px;
        margin-bottom: 6px;
    }
    .department-badge {
        font-size: 12px;
        padding: 2px 8px;
    }
    .work-tag {
        font-size: 11px;
        padding: 2px 8px;
        margin-right: 3px;
        margin-bottom: 3px;
    }
    .contact-card {
        padding: 15px !important;
    }
    .custom-toast {
        min-width: 250px;
        right: 10px;
        top: 10px;
    }
}

/* 团队详情页暗色模式适配 */
@media (prefers-color-scheme: dark) {
    .team-info-label {
        color: #aaa;
    }
    .team-info-value {
        color: #eee;
    }
    .team-info-item {
        border-bottom-color: #444;
    }
    .contact-card {
        background-color: #2a2a2a;
        border-color: #444;
    }
    .work-tag {
        background: linear-gradient(135deg, #7b1fa2 0%, #1976d2 100%);
    }
    .department-badge {
        background: linear-gradient(135deg, #e1bee7 0%, #f48fb1 100%);
        color: #333;
    }
}

/* 团队详情页打印样式 */
@media print {
    .social-icon,
    .qr-code-container,
    #qrPreviewModal,
    .custom-toast {
        display: none !important;
    }
    .team-info-item {
        border-bottom: 1px solid #ddd !important;
    }
    .contact-card {
        box-shadow: none !important;
        border: 1px solid #ddd !important;
        break-inside: avoid;
    }
}

/* 团队详情页无障碍优化 */
.social-icon:focus,
.copy-contact:focus,
.qr-code-container:focus {
    outline: 2px solid #007bff;
    outline-offset: 2px;
}
.social-icon:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 0 0 3px rgba(0,123,255,0.25);
}

/* 团队详情页加载状态 */
.qr-code-container.loading {
    position: relative;
}
.qr-code-container.loading::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255,255,255,0.8);
    z-index: 10;
}
.qr-code-container.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 30px;
    height: 30px;
    border: 3px solid #f3f3f3;
    border-top: 3px solid #007bff;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    z-index: 11;
}
@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

/* 团队详情页工具提示增强 */
.tooltip.team-tooltip .tooltip-inner {
    background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
    color: white;
    border-radius: 8px;
    padding: 12px 15px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    max-width: 250px;
}
.tooltip.team-tooltip .arrow::before {
    border-top-color: #2c3e50;
}

/* ============================================
   团队详情页样式结束
   ============================================ */
/* ============================================
   关于/单页特有样式补充
   ============================================ */

/* 单页内容区域优化 */
.single-page-content {
    line-height: 1.8;
    color: #444;
    font-size: 15px;
}

.single-page-content h2,
.single-page-content h3,
.single-page-content h4,
.single-page-content h5,
.single-page-content h6 {
    margin-top: 1.5em;
    margin-bottom: 0.8em;
    color: #333;
    font-weight: 600;
}

.single-page-content h2 {
    font-size: 1.5rem;
    border-bottom: 2px solid #00a65a;
    padding-bottom: 10px;
}

.single-page-content h3 {
    font-size: 1.3rem;
    color: #00a65a;
}

.single-page-content p {
    margin-bottom: 1.2em;
    text-align: justify;
}

.single-page-content ul,
.single-page-content ol {
    margin-bottom: 1.2em;
    padding-left: 2em;
}

.single-page-content li {
    margin-bottom: 0.5em;
    line-height: 1.6;
}

.single-page-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    margin: 1em 0;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
}

.single-page-content table {
    width: 100%;
    margin: 1.5em 0;
    border-collapse: collapse;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.single-page-content table th {
    background: #f8f9fa;
    font-weight: 600;
    color: #333;
}

.single-page-content table th,
.single-page-content table td {
    padding: 12px 15px;
    border: 1px solid #dee2e6;
    text-align: left;
}

.single-page-content blockquote {
    border-left: 4px solid #00a65a;
    background: #f8f9fa;
    padding: 15px 20px;
    margin: 1.5em 0;
    border-radius: 0 8px 8px 0;
    font-style: italic;
}

.single-page-content .highlight {
    background: #fff3cd;
    padding: 2px 6px;
    border-radius: 4px;
    border: 1px solid #ffeaa7;
}

/* 响应式表格 */
@media (max-width: 768px) {
    .single-page-content table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

/* 暗色模式适配 */
@media (prefers-color-scheme: dark) {
    .single-page-content {
        color: #ccc;
    }
    
    .single-page-content h2,
    .single-page-content h3,
    .single-page-content h4,
    .single-page-content h5,
    .single-page-content h6 {
        color: #eee;
    }
    
    .single-page-content table th {
        background: #333;
        color: #eee;
    }
    
    .single-page-content table th,
    .single-page-content table td {
        border-color: #555;
    }
    
    .single-page-content blockquote {
        background: #333;
        border-left-color: #00a65a;
    }
}

/* 侧边栏优化 */
.page-right + .col-md-3 .page-right {
    margin-bottom: 30px;
}

/* 侧边栏分类列表优化 */






/* 侧边栏最新信息优化 */









/* 响应式调整 */
@media (max-width: 992px) {
    .page-right {
        padding: 20px !important;
    }
    
    
}

@media (max-width: 768px) {
    
    
    
}

/* 打印优化 */
@media print {
    .col-md-3 {
        display: none;
    }
    
    .single-page-content {
        font-size: 12pt;
        line-height: 1.6;
    }
    
    .single-page-content h2,
    .single-page-content h3 {
        page-break-after: avoid;
    }
    
    .single-page-content img {
        max-width: 80% !important;
        page-break-inside: avoid;
    }
    
    .single-page-content table {
        page-break-inside: avoid;
    }
}

/* 无障碍优化 */
.single-page-content a:focus,
.nav-list li a:focus,
/* 移动端侧边栏隐藏优化 */
@media (max-width: 767px) {
    .d-none.d-md-block {
        display: none !important;
    }
    
    /* 移动端显示侧边栏内容（如果需要） */
    .mobile-sidebar {
        display: block !important;
    }
}

/* 移动端内容区域padding调整 */
@media (max-width: 768px) {
    .page-right.shadow-lg {
        padding: 15px !important;
        margin-top: 15px !important;
    }
}
/* ============================================
   联系页面特有样式
   ============================================ */

/* 联系信息区域优化 */
.contact-info-section h6 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid #00a65a;
    position: relative;
}

.contact-info-section h6 i {
    color: #00a65a;
    margin-right: 10px;
    font-size: 18px;
}

.contact-info-section hr {
    margin: 15px 0;
    border-color: #eee;
}

/* 联系方式详情样式 */
.contact-details {
    line-height: 1.8;
    font-size: 15px;
}

.contact-details p {
    margin-bottom: 1.2em;
    color: #444;
}

.contact-details strong {
    color: #333;
    font-weight: 600;
    min-width: 80px;
    display: inline-block;
}

.contact-details a {
    color: #007bff;
    text-decoration: none;
    transition: color 0.3s ease;
}

.contact-details a:hover {
    color: #0056b3;
    text-decoration: underline;
}

/* 反馈表单区域优化 */
.feedback-section h6 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid #00a65a;
    position: relative;
}

.feedback-section h6 i {
    color: #00a65a;
    margin-right: 10px;
    font-size: 18px;
}

/* 表单控件优化 */
.form-group label {
    font-weight: 500;
    color: #555;
    margin-bottom: 8px;
    font-size: 14px;
}

.form-control {
    border-radius: 6px;
    border: 1px solid #ddd;
    padding: 10px 15px;
    font-size: 14px;
    transition: all 0.3s ease;
    height: auto;
    min-height: 40px;
}

.form-control:focus {
    border-color: #00a65a;
    box-shadow: 0 0 0 0.2rem rgba(0, 166, 90, 0.25);
    outline: none;
}

textarea.form-control {
    min-height: 120px;
    resize: vertical;
}

/* 表单验证样式 */
.was-validated .form-control:valid {
    border-color: #28a745;
}

.was-validated .form-control:invalid {
    border-color: #dc3545;
}

.invalid-feedback {
    font-size: 12px;
    color: #dc3545;
    margin-top: 5px;
}

/* 提交按钮优化 */
.btn-submit {
    background: linear-gradient(135deg, #00a65a 0%, #008d4c 100%);
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 12px 30px;
    font-weight: 600;
    font-size: 16px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 120px;
}

.btn-submit:hover {
    background: linear-gradient(135deg, #008d4c 0%, #007a43 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 166, 90, 0.3);
}

.btn-submit:active {
    transform: translateY(0);
    box-shadow: 0 2px 5px rgba(0, 166, 90, 0.2);
}

.btn-submit i {
    margin-right: 8px;
    font-size: 14px;
}

/* 验证码区域样式 */
.captcha-container {
    display: flex;
    align-items: center;
    gap: 10px;
}

.captcha-container img {
    border-radius: 4px;
    border: 1px solid #ddd;
    height: 40px;
    cursor: pointer;
}

.captcha-refresh {
    background: #f8f9fa;
    border: 1px solid #ddd;
    color: #666;
    width: 40px;
    height: 40px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.captcha-refresh:hover {
    background: #e9ecef;
    color: #00a65a;
}

/* 表单成功/错误提示 */
.alert-success,
.alert-danger {
    border-radius: 6px;
    padding: 15px;
    margin-bottom: 20px;
    border: none;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.alert-success {
    background: #d4edda;
    color: #155724;
}

.alert-danger {
    background: #f8d7da;
    color: #721c24;
}

.alert-success i,
.alert-danger i {
    margin-right: 8px;
    font-size: 16px;
}

/* 响应式调整 */
@media (max-width: 768px) {
    .contact-info-section,
    .feedback-section {
        margin-bottom: 30px;
    }
    
    .contact-info-section h6,
    .feedback-section h6 {
        font-size: 1.1rem;
    }
    
    .contact-details {
        font-size: 14px;
    }
    
    .form-control {
        padding: 8px 12px;
        font-size: 13px;
    }
    
    textarea.form-control {
        min-height: 100px;
    }
    
    .btn-submit {
        padding: 10px 25px;
        font-size: 15px;
        min-width: 100px;
    }
    
    .captcha-container {
        flex-wrap: wrap;
    }
}

@media (max-width: 576px) {
    .contact-info-section h6,
    .feedback-section h6 {
        font-size: 1rem;
        padding-bottom: 8px;
        margin-bottom: 12px;
    }
    
    .contact-details p {
        font-size: 13px;
        line-height: 1.6;
    }
    
    .btn-submit {
        width: 100%;
        justify-content: center;
    }
}

/* 平板横屏适配 */
@media (min-width: 769px) and (max-width: 1024px) and (orientation: landscape) {
    .contact-info-section,
    .feedback-section {
        padding: 0 15px;
    }
}

/* 暗色模式适配 */
@media (prefers-color-scheme: dark) {
    .contact-info-section h6,
    .feedback-section h6 {
        color: #eee;
        border-bottom-color: #00a65a;
    }
    
    .contact-info-section h6 i,
    .feedback-section h6 i {
        color: #00a65a;
    }
    
    .contact-details p {
        color: #ccc;
    }
    
    .contact-details strong {
        color: #eee;
    }
    
    .contact-details a {
        color: #66b3ff;
    }
    
    .contact-details a:hover {
        color: #3399ff;
    }
    
    .form-group label {
        color: #ccc;
    }
    
    .form-control {
        background: #333;
        border-color: #555;
        color: #eee;
    }
    
    .form-control:focus {
        background: #3a3a3a;
        border-color: #00a65a;
        color: #eee;
    }
    
    .captcha-refresh {
        background: #333;
        border-color: #555;
        color: #ccc;
    }
    
    .captcha-refresh:hover {
        background: #3a3a3a;
        color: #00a65a;
    }
}

/* 打印样式 */
@media print {
    .feedback-section {
        display: none;
    }
    
    .contact-info-section {
        break-inside: avoid;
    }
    
    .contact-details p {
        font-size: 12pt;
        margin-bottom: 10pt;
    }
    
    .contact-details a {
        color: #000;
        text-decoration: none;
    }
}

/* 无障碍优化 */
.form-control:focus,
.btn-submit:focus,
.captcha-refresh:focus {
    outline: 2px solid #00a65a;
    outline-offset: 2px;
}

.btn-submit:focus {
    outline-color: #fff;
    outline-offset: 0;
}

/* 加载状态 */
.btn-submit.loading {
    position: relative;
    pointer-events: none;
}

.btn-submit.loading::after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* 高对比度模式 */
@media (prefers-contrast: high) {
    .form-control {
        border: 2px solid #000;
    }
    
    .btn-submit {
        border: 2px solid #000;
    }
}













/* ============================================
   现代化反馈表单样式设计
   ============================================ */

.modern-feedback-form {
    background: #fff;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
}

/* 表单头部 */
.form-header {
    text-align: center;
    margin-bottom: 30px;
}

.form-title {
    color: #2c3e50;
    font-weight: 700;
    font-size: 1.75rem;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.form-title i {
    color: #00a65a;
    font-size: 1.5rem;
}

.form-subtitle {
    font-size: 1rem;
    color: #7f8c8d;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

/* 浮动标签样式 */
.form-floating {
    position: relative;
    margin-bottom: 1.5rem;
}

.form-floating > .form-control,
.form-floating > .form-control-plaintext,
.form-floating > .form-select {
    height: calc(3.5rem + 2px);
    line-height: 1.25;
    padding: 1rem 0.75rem;
    border: 2px solid #e9ecef;
    border-radius: 12px;
    background: #f8fafc;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    font-size: 1rem;
    color: #2c3e50;
    width: 100%;
    box-sizing: border-box;
}

.form-floating > textarea.form-control {
    height: auto;
    min-height: 120px;
    padding-top: 1.5rem;
    resize: vertical;
}

.form-floating > label {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    padding: 1rem 0.75rem;
    pointer-events: none;
    border: 1px solid transparent;
    transform-origin: 0 0;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    color: #7f8c8d;
    font-weight: 500;
    display: flex;
    align-items: center;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.form-floating > .form-control:focus,
.form-floating > .form-control:not(:placeholder-shown),
.form-floating > .form-control-plaintext:focus,
.form-floating > .form-control-plaintext:not(:placeholder-shown),
.form-floating > .form-select:focus,
.form-floating > .form-select:not(:placeholder-shown) {
    padding-top: 1.5rem;
    padding-bottom: 0.5rem;
    border-color: #00a65a;
    background: #fff;
    box-shadow: 0 4px 20px rgba(0, 166, 90, 0.15);
}

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-control-plaintext:focus ~ label,
.form-floating > .form-control-plaintext:not(:placeholder-shown) ~ label,
.form-floating > .form-select:focus ~ label,
.form-floating > .form-select:not(:placeholder-shown) ~ label {
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    color: #00a65a;
    background: #fff;
    padding: 0 8px;
    height: auto;
    font-weight: 600;
}

/* 表单提示文本 */
.form-text {
    font-size: 0.85rem;
    color: #95a5a6;
    margin-top: 6px;
    display: flex;
    align-items: center;
}

.form-text i {
    margin-right: 4px;
    font-size: 0.8rem;
}

/* 卡片样式 */
.card {
    border: none;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    overflow: hidden;
    margin-bottom: 1.5rem;
    width: 100%;
}

.card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

.card-body {
    padding: 1.5rem;
}

.card-title {
    color: #2c3e50;
    font-weight: 600;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

.card-title i {
    color: #00a65a;
    font-size: 1rem;
}

.card-title.text-danger {
    color: #e74c3c !important;
}

.card-title.text-danger i {
    color: #e74c3c !important;
}

/* 自定义字段卡片 */
.custom-field-card {
    background: linear-gradient(135deg, #f9f9ff 0%, #f0f4ff 100%);
    border-left: 4px solid #3498db;
}

.custom-field-card .form-floating {
    margin-bottom: 0;
}

/* 单选和复选框样式 - 垂直排列（默认） */
.radio-options,
.checkbox-options {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.form-check {
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
}

.form-check-input {
    width: 20px;
    height: 20px;
    margin-right: 10px;
    border: 2px solid #ddd;
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.form-check-input:checked {
    background-color: #00a65a;
    border-color: #00a65a;
}

.form-check-input:focus {
    box-shadow: 0 0 0 3px rgba(0, 166, 90, 0.25);
}

.form-check-label {
    cursor: pointer;
    color: #2c3e50;
    font-weight: 500;
    display: flex;
    align-items: center;
    padding: 8px 0;
    transition: color 0.2s ease;
    flex-grow: 1;
}

.form-check-label:hover {
    color: #00a65a;
}

.option-text {
    font-size: 1rem;
    line-height: 1.4;
}

/* 水平排列选项样式 */
.horizontal-options {
    width: 100%;
}

.horizontal-options .row {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    flex-wrap: wrap;
}

.horizontal-options .col-auto {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.form-check.form-check-inline {
    display: inline-flex;
    align-items: center;
    margin-right: 1rem;
    margin-bottom: 0.5rem;
}

.form-check.form-check-inline .form-check-input {
    margin-right: 0.5rem;
    margin-top: 0;
}

.form-check.form-check-inline .form-check-label {
    white-space: nowrap;
    margin-bottom: 0;
}

/* 反馈内容卡片 */
.feedback-content-card {
    background: linear-gradient(135deg, #f8fafc 0%, #e8f4f8 100%);
    border-left: 4px solid #00a65a;
}

.feedback-content-card .form-floating {
    margin-bottom: 0;
}

.feedback-content-card .form-floating textarea.form-control {
    min-height: 140px;
    width: 100%;
}

.char-count {
    font-weight: 600;
    color: #7f8c8d;
    font-size: 0.9rem;
}

/* 验证码和提交卡片样式 */
.submit-card {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-left: 4px solid #3498db;
    border-top: 1px solid #e9ecef;
}

/* 验证码部分 */
.captcha-section {
    padding: 1rem;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #e9ecef;
}

.captcha-title {
    color: #2c3e50;
    font-weight: 600;
    font-size: 1rem;
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

.captcha-title i {
    color: #3498db;
    font-size: 0.9rem;
}

/* 提交按钮部分 */
.submit-section {
    padding: 1rem;
    background: linear-gradient(135deg, #f8fafc 0%, #e8f4f8 100%);
    border-radius: 8px;
    border: 1px solid #e9ecef;
    text-align: center;
}

/* 验证码容器布局 */
.captcha-container {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    flex-wrap: wrap;
    min-height: 70px;
}

/* 验证码容器垂直居中样式 */
.captcha-container.align-center {
    align-items: center; /* 垂直居中 */
}

.captcha-container.align-center .captcha-image {
    align-items: center; /* 垂直居中 */
    height: auto;
    padding-top: 0;
}

.captcha-container.align-center .captcha-img-wrapper {
    margin-top: 0;
}

.captcha-container.align-center .refresh-btn {
    margin-top: 0;
}

.captcha-input {
    flex: 1;
    min-width: 180px;
}

/* 调整验证码输入框与其他输入框高度一致 */
.captcha-input .form-floating {
    margin-bottom: 0;
    height: calc(3.5rem + 2px); /* 与其他输入框保持一致 */
}

.captcha-input .form-floating > .form-control {
    height: calc(3.5rem + 2px); /* 与其他输入框保持一致 */
}

.captcha-input .form-floating > label {
    height: calc(3.5rem + 2px);
    display: flex;
    align-items: center;
}

.captcha-image {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    flex-shrink: 0;
    height: 70px;
    padding-top: 15px;
}

.captcha-img-wrapper {
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 5px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    width: 130px;
    margin-top: -8px;
}

.captcha-img-wrapper img {
    display: block;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    width: 120px;
    height: 40px;
    object-fit: cover;
}

.captcha-img-wrapper img:hover {
    transform: scale(1.05);
}

.refresh-btn {
    color: #6c757d;
    padding: 6px 12px;
    border-radius: 20px;
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    font-size: 0.85rem;
    transition: all 0.3s ease;
    white-space: nowrap;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: -8px;
}

.refresh-btn:hover {
    background: #e9ecef;
    color: #3498db;
    border-color: #3498db;
    text-decoration: none;
    transform: rotate(15deg);
}

/* 调整表单浮动标签在验证码输入框中的位置 */
.captcha-input .form-floating {
    margin-bottom: 0;
    height: 70px; /* 固定高度以对齐 */
}

.captcha-input .form-floating > .form-control {
    height: 70px; /* 匹配容器高度 */
}

.captcha-input .form-floating > label {
    height: 70px;
    display: flex;
    align-items: center;
}

/* 响应式调整 */
@media (max-width: 768px) {
    .captcha-container {
        flex-direction: column;
        align-items: stretch;
        min-height: auto;
    }
    
    .captcha-input {
        width: 100%;
        min-width: auto;
    }
    
    .captcha-input .form-floating {
        height: auto;
    }
    
    .captcha-input .form-floating > .form-control {
        height: calc(3.5rem + 2px);
    }
    
    .captcha-input .form-floating > label {
        height: 100%;
    }
    
    .captcha-image {
        justify-content: flex-start;
        margin-top: 10px;
        height: auto;
    }
    
    .captcha-img-wrapper {
        width: 150px; /* 在移动端增加宽度 */
        height: 45px;
    }
    
    .captcha-img-wrapper img {
        width: 140px;
        height: 35px;
    }
    
    .refresh-btn {
        height: 45px;
    }
}

@media (max-width: 576px) {
    .captcha-img-wrapper {
        width: 130px;
        height: 40px;
    }
    
    .captcha-img-wrapper img {
        width: 120px;
        height: 30px;
    }
    
    .refresh-btn {
        font-size: 0.8rem;
        padding: 5px 10px;
        height: 40px;
    }
}

/* 暗色模式适配 */
@media (prefers-color-scheme: dark) {
    .captcha-img-wrapper {
        background: #2c3e50;
        border-color: #4a6572;
    }
    
    .refresh-btn {
        background: #34495e;
        border-color: #4a6572;
        color: #bdc3c7;
    }
    
    .refresh-btn:hover {
        background: #3a506b;
        border-color: #3498db;
        color: #3498db;
    }
}


/* 提交按钮 */
.btn-submit {
    background: linear-gradient(135deg, #00a65a 0%, #008d4c 100%);
    color: white;
    border: none;
    border-radius: 12px;
    padding: 20px;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60px;
    box-shadow: 0 6px 20px rgba(0, 166, 90, 0.3);
    position: relative;
    overflow: hidden;
    width: 100%;
}

.btn-submit:hover {
    background: linear-gradient(135deg, #008d4c 0%, #007a43 100%);
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(0, 166, 90, 0.4);
}

.btn-submit:active {
    transform: translateY(-1px);
    box-shadow: 0 4px 15px rgba(0, 166, 90, 0.3);
}

.btn-submit:before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.7s ease;
}

.btn-submit:hover:before {
    left: 100%;
}

.submit-content {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.3s ease;
}

.submit-loading {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #00a65a 0%, #008d4c 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.btn-submit.loading .submit-content {
    opacity: 0;
}

.btn-submit.loading .submit-loading {
    opacity: 1;
}

.spinner-border {
    width: 1.5rem;
    height: 1.5rem;
    border-width: 0.2em;
}

/* 调整提交按钮在卡片内 */
.submit-section .btn-submit {
    min-height: 50px;
    padding: 16px;
    font-size: 1rem;
}

/* 表单底部 */
.form-footer {
    color: #7f8c8d;
    font-size: 0.9rem;
    border-top: 1px solid #e9ecef;
    margin-top: 2rem;
    padding-top: 1.5rem;
}

.form-footer i {
    color: #00a65a;
    font-size: 0.8rem;
}

/* 错误提示 */
#error_tips {
    border-radius: 12px;
    border: none;
    background: linear-gradient(135deg, #ff6b6b 0%, #ee5a52 100%);
    color: white;
    animation: shake 0.5s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
}

@keyframes shake {
    0%, 100% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
    20%, 40%, 60%, 80% { transform: translateX(5px); }
}

#error_tips i {
    font-size: 1.2rem;
    margin-right: 10px;
}

.error-message {
    font-weight: 500;
}

/* 必填字段标记 */
.text-danger {
    color: #e74c3c !important;
    font-weight: 600;
}

/* 表单布局 */
.modern-feedback-form .row {
    margin-left: -15px;
    margin-right: -15px;
}

.modern-feedback-form .row > [class*="col-"] {
    padding-left: 15px;
    padding-right: 15px;
}

.col-12.mb-4.px-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* 验证状态 */
.form-control.required:invalid,
.form-control.required.is-invalid {
    border-color: #e74c3c !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e74c3c' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23e74c3c' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.form-control.required:valid,
.form-control.required.is-valid {
    border-color: #00a65a !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2300a65a' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

/* 动画效果 */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.modern-feedback-form .form-group {
    animation: fadeInUp 0.5s ease forwards;
    animation-delay: calc(var(--item-index, 0) * 0.1s);
    opacity: 0;
}

/* 暗色模式适配 */
@media (prefers-color-scheme: dark) {
    .modern-feedback-form {
        background: #2c3e50;
        border-color: #34495e;
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
    }
    
    .form-title {
        color: #ecf0f1;
    }
    
    .form-subtitle {
        color: #bdc3c7;
    }
    
    .form-floating > .form-control,
    .form-floating > .form-control-plaintext,
    .form-floating > .form-select {
        background: #34495e;
        border-color: #4a6572;
        color: #ecf0f1;
    }
    
    .form-floating > label {
        color: #bdc3c7;
    }
    
    .form-floating > .form-control:focus ~ label,
    .form-floating > .form-control:not(:placeholder-shown) ~ label {
        background: #2c3e50;
    }
    
    .card {
        background: #34495e;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
    }
    
    .custom-field-card {
        background: linear-gradient(135deg, #34495e 0%, #3a506b 100%);
    }
    
    .feedback-content-card {
        background: linear-gradient(135deg, #34495e 0%, #2c3e50 100%);
    }
    
    .submit-card {
        background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
        border-color: #4a6572;
    }
    
    .card-title {
        color: #ecf0f1;
    }
    
    .form-check-label {
        color: #ecf0f1;
    }
    
    .form-text {
        color: #95a5a6;
    }
    
    .captcha-section {
        background: #34495e;
        border-color: #4a6572;
    }
    
    .captcha-title {
        color: #ecf0f1;
    }
    
    .captcha-title i {
        color: #3498db;
    }
    
    .submit-section {
        background: linear-gradient(135deg, #34495e 0%, #3a506b 100%);
        border-color: #4a6572;
    }
    
    .captcha-img-wrapper {
        background: #2c3e50;
        border-color: #4a6572;
    }
    
    .refresh-btn {
        background: #34495e;
        border-color: #4a6572;
        color: #bdc3c7;
    }
    
    .refresh-btn:hover {
        background: #3a506b;
        border-color: #3498db;
        color: #3498db;
    }
    
    .form-footer {
        color: #95a5a6;
        border-top-color: #4a6572;
    }
}

/* 响应式设计 */
@media (max-width: 992px) {
    .modern-feedback-form {
        padding: 20px;
    }
    
    .form-title {
        font-size: 1.5rem;
    }
    
    .btn-submit {
        padding: 16px;
        font-size: 1rem;
        min-height: 50px;
    }
    
    .captcha-container {
        flex-direction: column;
        align-items: stretch;
    }
    
    .captcha-input {
        width: 100%;
        min-width: auto;
    }
    
    .captcha-image {
        justify-content: center;
        margin-top: 10px;
        height: auto;
        padding-top: 0;
        align-items: center;
    }
    
    .captcha-img-wrapper {
        margin-top: 0;
        height: 45px;
    }
    
    .refresh-btn {
        margin-top: 0;
        height: 45px;
    }
    
    .submit-section .btn-submit {
        min-height: 45px;
        padding: 14px;
    }
}

@media (max-width: 768px) {
    .modern-feedback-form {
        padding: 15px;
        border-radius: 12px;
    }
    
    .form-title {
        font-size: 1.3rem;
    }
    
    .form-subtitle {
        font-size: 0.9rem;
    }
    
    .card-title {
        font-size: 1rem;
    }
    
    .card-body {
        padding: 1.25rem;
    }
    
    .form-floating > .form-control,
    .form-floating > .form-control-plaintext,
    .form-floating > .form-select {
        height: calc(3rem + 2px);
        font-size: 0.95rem;
    }
    
    .form-floating > textarea.form-control {
        min-height: 120px;
    }
    
    .feedback-content-card .form-floating textarea.form-control {
        min-height: 120px;
    }
    
    .horizontal-options .row {
        flex-wrap: wrap;
    }
    
    .horizontal-options .col-auto {
        flex: 0 0 auto;
        width: auto;
    }
    
    .form-check.form-check-inline {
        margin-right: 0.75rem;
        margin-bottom: 0.75rem;
    }
    
    .captcha-section,
    .submit-section {
        padding: 0.75rem;
    }
    
    .captcha-input .form-floating {
        height: auto;
    }
    
    .captcha-input .form-floating > .form-control {
        height: calc(3rem + 2px);
    }
    
    .captcha-input .form-floating > label {
        height: 100%;
    }
}

@media (max-width: 576px) {
    .btn-submit {
        padding: 14px;
        font-size: 0.95rem;
        min-height: 45px;
    }
    
    .form-footer {
        font-size: 0.8rem;
    }
    
    .col-12.mb-4.px-0 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    .horizontal-options .row {
        gap: 0.5rem !important;
    }
    
    .horizontal-options .col-auto {
        padding-left: 0.25rem;
        padding-right: 0.25rem;
    }
    
    .form-check.form-check-inline {
        margin-right: 0.5rem;
        margin-bottom: 0.5rem;
    }
    
    .submit-section .btn-submit {
        min-height: 45px;
        padding: 14px;
    }
    
    .captcha-img-wrapper {
        width: 130px;
        height: 40px;
    }
    
    .captcha-img-wrapper img {
        width: 120px;
        height: 30px;
    }
    
    .refresh-btn {
        font-size: 0.8rem;
        padding: 5px 10px;
        height: 40px;
    }
}
/* 验证码和提交组合布局 */
.captcha-submit-container {
    width: 100%;
}

.captcha-section .submit-section {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid #e9ecef;
}

.captcha-section .submit-section .btn-submit {
    min-height: 60px;
    font-size: 1.1rem;
}

/* 暗色模式适配 */
@media (prefers-color-scheme: dark) {
    .captcha-section .submit-section {
        border-top-color: #4a6572;
    }
}

/* 响应式调整 */
@media (max-width: 768px) {
    .captcha-section .submit-section {
        margin-top: 1.5rem;
        padding-top: 1rem;
    }
    
    .captcha-section .submit-section .btn-submit {
        min-height: 50px;
        font-size: 1rem;
    }
}

@media (max-width: 576px) {
    .captcha-section .submit-section .btn-submit {
        min-height: 45px;
        font-size: 0.95rem;
        padding: 14px;
    }
}


/* ============================================
   登录页面专用样式修复
   ============================================ */

/* 修复登录页面容器 */
.offset-md-3.col-md-6 {
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 50px;
}

/* 登录框主容器样式 */
.page-right.shadow-lg.pb-5 {
    padding: 40px 35px !important;
    border-radius: 15px !important;
    margin-top: 20px;
    margin-bottom: 30px;
    background: #fff;
    border: 1px solid #eee;
    border-top: 3px solid #00a65a;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1) !important;
    width: 100%;
}

/* 修复登录表单容器 */
#form_login.offset-md-1.col-md-10 {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* 登录标题样式 */
.page-right h5.mt-4.text-center {
    font-size: 24px;
    font-weight: 700;
    color: #333;
    margin-bottom: 30px !important;
    padding-bottom: 15px;
    border-bottom: 2px solid #f0f0f0;
}

/* 错误提示样式 */
#error_tips {
    background: #fef2f2;
    border-radius: 8px;
    padding: 12px 20px;
    margin: 15px 0 20px 0;
    border: 1px solid #fed7d7;
    color: #dc3545;
    font-weight: 500;
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

/* 表单输入组样式 */
#form_login .input-group {
    margin-bottom: 20px;
}

#form_login .input-group-prepend {
    min-width: 120px;
}

#form_login .input-group-text.btn-rounded {
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-right: none;
    border-radius: 8px 0 0 8px !important;
    color: #495057;
    font-weight: 500;
}

#form_login .form-control.btn-rounded {
    border: 1px solid #dee2e6;
    border-left: none;
    border-radius: 0 8px 8px 0 !important;
    height: 45px;
    font-size: 15px;
    transition: all 0.3s ease;
}

#form_login .form-control.btn-rounded:focus {
    border-color: #00a65a;
    box-shadow: 0 0 0 0.2rem rgba(0, 166, 90, 0.25);
    z-index: 3;
}

/* 验证码区域 */
#form_login #show_verify {
    background: #f8f9fa;
    padding: 15px;
    border-radius: 8px;
    margin-top: 20px;
    margin-bottom: 20px;
}

#form_login #show_verify .input-group-text.btn-rounded {
    border-radius: 8px 0 0 8px !important;
    background: #fff;
}

#form_login #show_verify .form-control.btn-rounded {
    border-radius: 0 8px 8px 0 !important;
    background: #fff;
}

#form_login #img_verify {
    border-radius: 8px;
    cursor: pointer;
    border: 1px solid #dee2e6;
    transition: all 0.3s ease;
    width: 100% !important;
    height: 45px !important;
    object-fit: cover;
}

#form_login #img_verify:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

/* 记住我复选框 */
#form_login .form-check-inline {
    padding: 10px 0;
    color: #666;
    font-size: 14px;
}

#form_login .form-check-input {
    margin-right: 8px;
    cursor: pointer;
}

/* 登录按钮样式 */
#form_login .btn-rounded.btn-danger {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    border: none;
    border-radius: 8px !important;
    height: 50px;
    font-size: 16px;
    font-weight: 600;
    transition: all 0.3s ease;
    margin-top: 10px;
}

#form_login .btn-rounded.btn-danger:hover {
    background: linear-gradient(135deg, #c82333 0%, #bd2130 100%);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(220, 53, 69, 0.3);
}

#form_login .btn-rounded.btn-danger i {
    font-size: 16px;
}

/* 注册和找回密码链接 */
#form_login .row {
    margin-top: 20px;
    margin-bottom: 25px;
}

#form_login a {
    color: #007bff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: color 0.3s ease;
}

#form_login a:hover {
    color: #0056b3;
    text-decoration: underline;
}

#form_login a i {
    font-size: 12px;
    transition: transform 0.3s ease;
}

#form_login a:hover i {
    transform: translateX(3px);
}

/* 社交登录分隔线 */
#form_login .w-100.my-3.text-center {
    position: relative;
    margin: 30px 0;
    color: #999;
    font-size: 14px;
}

#form_login .w-100.my-3.text-center:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 1px;
    background: #eee;
    z-index: 1;
}

#form_login .w-100.my-3.text-center span {
    position: relative;
    z-index: 2;
    background: #fff;
    padding: 0 15px;
    color: #666;
}

/* 社交登录按钮 */
#form_login .w-100.text-center {
    margin-top: 25px;
}

#form_login .login_social,
#form_login .p-2.bg-success.text-white.rounded-circle {
    width: 45px;
    height: 45px;
    line-height: 45px;
    text-align: center;
    border-radius: 50% !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    transition: all 0.3s ease;
    text-decoration: none;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

#form_login .login_social.bg-primary {
    background: linear-gradient(135deg, #247af0 0%, #1b6bc1 100%) !important;
}

#form_login .p-2.bg-success.text-white.rounded-circle {
    background: linear-gradient(135deg, #07C160 0%, #06ae56 100%) !important;
}

#form_login .login_social:hover,
#form_login .p-2.bg-success.text-white.rounded-circle:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
    text-decoration: none;
}

#form_login .fab.fa-lg {
    font-size: 20px;
}

/* 模态框样式（微信扫码） */
#modal_sm .modal-content {
    border-radius: 12px;
    overflow: hidden;
}

#modal_sm .modal-header {
    background: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    padding: 15px 20px;
}

#modal_sm .modal-body {
    padding: 30px;
    text-align: center;
}

/* 响应式调整 */
@media (max-width: 992px) {
    .offset-md-3.col-md-6 {
        padding-left: 10px;
        padding-right: 10px;
    }
    
    .page-right.shadow-lg.pb-5 {
        padding: 30px 25px !important;
    }
    
    #form_login .input-group-prepend {
        min-width: 100px;
    }
    
    #form_login .input-group-text.btn-rounded span.small {
        font-size: 13px;
    }
}

@media (max-width: 768px) {
    .offset-md-3.col-md-6 {
        padding-left: 5px;
        padding-right: 5px;
    }
    
    .page-right.shadow-lg.pb-5 {
        padding: 25px 20px !important;
        margin-top: 15px;
        margin-bottom: 20px;
    }
    
    .page-right h5.mt-4.text-center {
        font-size: 20px;
        margin-bottom: 20px !important;
    }
    
    #form_login {
        padding: 0 !important;
    }
    
    #form_login .form-control.btn-rounded {
        height: 42px;
        font-size: 14px;
    }
    
    #form_login .btn-rounded.btn-danger {
        height: 45px;
        font-size: 15px;
    }
    
    #form_login .input-group-text.btn-rounded {
        padding-left: 12px;
        padding-right: 12px;
    }
}

@media (max-width: 576px) {
    .offset-md-3.col-md-6 {
        flex: 0 0 100%;
        max-width: 100%;
        margin-left: 0;
    }
    
    .page-right.shadow-lg.pb-5 {
        padding: 20px 15px !important;
        margin-top: 10px;
        margin-bottom: 15px;
        border-radius: 10px !important;
    }
    
    .page-right h5.mt-4.text-center {
        font-size: 18px;
        margin-bottom: 15px !important;
    }
    
    #error_tips {
        font-size: 13px;
        padding: 10px 15px;
        min-height: 40px;
    }
    
    #form_login .input-group-prepend {
        min-width: 90px;
    }
    
    #form_login .input-group-text.btn-rounded {
        font-size: 12px;
        padding: 0 10px;
    }
    
    #form_login .input-group-text.btn-rounded .fa {
        font-size: 12px;
    }
    
    #form_login #show_verify .col-md-8,
    #form_login #show_verify .col-md-4 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    #form_login .login_social,
    #form_login .p-2.bg-success.text-white.rounded-circle {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 18px;
    }
    
    .mr-4, .ml-4 {
        margin-right: 15px !important;
        margin-left: 15px !important;
    }
}

/* 暗色模式适配 */
@media (prefers-color-scheme: dark) {
    .page-right.shadow-lg.pb-5 {
        background: #2c3e50;
        border-color: #34495e;
        border-top-color: #00a65a;
    }
    
    .page-right h5.mt-4.text-center {
        color: #ecf0f1;
        border-bottom-color: #4a6572;
    }
    
    #error_tips {
        background: #7b1c1c;
        border-color: #991b1b;
        color: #fca5a5;
    }
    
    #form_login .input-group-text.btn-rounded {
        background: #34495e;
        border-color: #4a6572;
        color: #bdc3c7;
    }
    
    #form_login .form-control.btn-rounded {
        background: #2c3e50;
        border-color: #4a6572;
        color: #ecf0f1;
    }
    
    #form_login .form-control.btn-rounded:focus {
        background: #3a506b;
        border-color: #00a65a;
    }
    
    #form_login #show_verify {
        background: #34495e;
    }
    
    #form_login .form-check-inline {
        color: #bdc3c7;
    }
    
    #form_login a {
        color: #66b3ff;
    }
    
    #form_login a:hover {
        color: #3399ff;
    }
    
    #form_login .w-100.my-3.text-center:before {
        background: #4a6572;
    }
    
    #form_login .w-100.my-3.text-center span {
        background: #2c3e50;
        color: #bdc3c7;
    }
}

/* 打印样式 */
@media print {
    .page-right.shadow-lg.pb-5 {
        box-shadow: none !important;
        border: 1px solid #ddd !important;
        padding: 20px !important;
    }
    
    #form_login .login_social,
    #form_login .p-2.bg-success.text-white.rounded-circle {
        display: none !important;
    }
    
    #form_login .w-100.my-3.text-center {
        display: none !important;
    }
}

/* ============================================
   用户中心统一样式 - 包括注册、重置密码等页面
   ============================================ */

/* 步骤指示器容器 */
.w-100.mb-5.text-muted {
    position: relative;
    margin-bottom: 40px !important;
    padding: 0;
    background: none !important;
    height: 60px;
}

/* 步骤线背景 */
.w-100.mb-5.text-muted:before {
    content: '';
    position: absolute;
    top: 25px;
    left: 10%;
    right: 10%;
    height: 3px;
    z-index: 1;
    border-radius: 2px;
}

/* 第一步注册页面 - 第1步激活 */
.step-1 .w-100.mb-5.text-muted:before {
    background: linear-gradient(90deg, 
        #dc3545 0%, 
        #dc3545 33.33%, 
        #dee2e6 33.33%, 
        #dee2e6 100%);
}

/* 第二步注册页面 - 第2步激活 */
.step-2 .w-100.mb-5.text-muted:before {
    background: linear-gradient(90deg, 
        #dc3545 0%, 
        #dc3545 66.66%, 
        #dee2e6 66.66%, 
        #dee2e6 100%);
}

/* 步骤容器 */
.w-100.mb-5.text-muted .row {
    position: relative;
    z-index: 2;
    height: 100%;
    align-items: center;
}

/* 每个步骤列 */
.w-100.mb-5.text-muted .col-md-4 {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
}

/* 步骤圆圈 */
.w-100.mb-5.text-muted .col-md-4 span .rounded-circle {
    width: 30px;
    height: 30px;
    line-height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px;
    font-weight: 600;
    border: 2px solid;
    font-size: 14px;
    background: #fff;
    z-index: 3;
}

/* 第一步页面样式 */
.step-1 .w-100.mb-5.text-muted .col-md-4:first-child span .rounded-circle {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important;
    border-color: #dc3545 !important;
    color: #fff !important;
}

.step-1 .w-100.mb-5.text-muted .col-md-4:not(:first-child) span .rounded-circle {
    background: #fff !important;
    border-color: #dee2e6 !important;
    color: #6c757d !important;
}

/* 第二步页面样式 */
.step-2 .w-100.mb-5.text-muted .col-md-4:first-child span .rounded-circle {
    background: #6c757d !important;
    border-color: #6c757d !important;
    color: #fff !important;
}

.step-2 .w-100.mb-5.text-muted .col-md-4:nth-child(2) span .rounded-circle {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important;
    border-color: #dc3545 !important;
    color: #fff !important;
}

.step-2 .w-100.mb-5.text-muted .col-md-4:last-child span .rounded-circle {
    background: #fff !important;
    border-color: #dee2e6 !important;
    color: #6c757d !important;
}

/* 步骤文本容器 */
.w-100.mb-5.text-muted .col-md-4 span {
    background: transparent !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: none !important;
    border: none !important;
    font-size: 14px;
    font-weight: 500;
    color: #666;
}

/* 激活步骤文本颜色 */
.w-100.mb-5.text-muted .col-md-4 span.active-step {
    color: #dc3545 !important;
    font-weight: 600;
}

/* ============================================
   表单通用样式 - 注册、重置密码、登录等页面通用
   ============================================ */

/* 表单容器样式 */
.page-right {
    background: #fff;
    border-radius: 15px;
    padding: 30px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.08);
    margin-bottom: 20px;
}

/* 标题样式 */
.page-right h5.text-center {
    font-weight: 600;
    color: #333;
    margin-bottom: 25px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
}

/* 输入框圆角样式 */
.btn-rounded {
    border-radius: 25px !important;
}

.input-group-text.btn-rounded {
    border-radius: 25px 0 0 25px !important;
    background: #f8f9fa;
    border-color: #dee2e6;
    font-weight: 500;
    color: #495057;
    min-width: 120px;
}

.form-control.btn-rounded {
    border-radius: 0 25px 25px 0 !important;
    border-left: none;
}

/* 表单内边距调整 */
.page-right .px-3.px-md-4 {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
}

@media (min-width: 768px) {
    .page-right .px-3.px-md-4 {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }
}

/* 按钮样式 */
.btn-danger {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    border: none;
    transition: all 0.3s;
}

.btn-danger:hover {
    background: linear-gradient(135deg, #c82333 0%, #bd2130 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(220, 53, 69, 0.3);
}

/* 错误提示样式 */
#error_tips {
    min-height: 30px;
    padding: 5px 0;
}

/* 密码提示文字 */
.text-muted.small {
    font-size: 13px;
    color: #6c757d;
}

/* 移动端适配 */
@media (max-width: 768px) {
    .w-100.mb-5.text-muted {
        height: auto;
        margin-bottom: 30px !important;
    }
    
    .w-100.mb-5.text-muted:before {
        display: none;
    }
    
    .w-100.mb-5.text-muted .row {
        flex-direction: column;
        gap: 20px;
    }
    
    .w-100.mb-5.text-muted .col-md-4 {
        width: 100%;
        flex-direction: row;
        justify-content: flex-start;
        text-align: left;
    }
    
    .w-100.mb-5.text-muted .col-md-4 span {
        flex-direction: row;
        align-items: center;
    }
    
    .w-100.mb-5.text-muted .col-md-4 span .rounded-circle {
        margin-bottom: 0;
        margin-right: 10px;
        width: 25px;
        height: 25px;
        line-height: 21px;
        font-size: 12px;
    }
    
    /* 移动端表单调整 */
    .page-right {
        padding: 20px 15px;
    }
    
    .page-right h5.text-center {
        font-size: 18px;
        margin-bottom: 20px;
    }
    
    .input-group-text.btn-rounded {
        min-width: 110px;
        font-size: 13px;
    }
}
/* ============================================
   模态框样式 - 重置密码等模态框
   ============================================ */

/* 模态框通用样式 */
.modal-content {
    border-radius: 15px;
    border: none;
    overflow: hidden;
}

.modal-header {
    background: #f8f9fa;
    border-bottom: 1px solid #eee;
    padding: 1rem 1.5rem;
}

.modal-title {
    font-weight: 600;
    color: #333;
    margin: 0;
}

.modal-body {
    padding: 1.5rem;
}

/* 模态框内的表单样式 */
.modal-body .form-group {
    margin-bottom: 1.5rem;
}

.modal-body .input-group {
    width: 100%;
}

/* 模态框内输入框样式 */
.modal-body .input-group-text.btn-rounded {
    min-width: 100px;
    font-size: 14px;
}

.modal-body .form-control.btn-rounded {
    font-size: 14px;
}

/* 错误提示样式 */
#error_tips {
    min-height: 30px;
    padding: 8px 0;
    font-size: 14px;
    border-radius: 8px;
    margin-bottom: 15px;
}

/* 成功提示样式 */
.text-success {
    color: #28a745 !important;
}

.text-success .fas.fa-check-circle {
    color: #28a745;
}

/* 密码提示文字 */
.modal-body small.text-muted {
    font-size: 12px;
    line-height: 1.4;
}

/* 响应式调整 */
@media (max-width: 576px) {
    .modal-dialog {
        margin: 10px;
    }
    
    .modal-body {
        padding: 1rem;
    }
    
    .modal-body .input-group-text.btn-rounded {
        min-width: 90px;
        font-size: 13px;
    }
    
    .modal-body .form-control.btn-rounded {
        font-size: 13px;
    }
}
