.slideshow {
    height: 400px;
    object-fit: cover;
}

.content-detail-container {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'PingFang SC', 'Microsoft YaHei', sans-serif !important;
    color: #333333 !important;
    line-height: 1.8 !important;
    font-size: 16px !important;
}

.content-detail-container p {
    margin-bottom: 1.25rem !important;
}

.content-detail-container h1 {
    font-size: 1.75rem !important;
    font-weight: 600 !important;
    color: #111111 !important;
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
}

.content-detail-container h2 {
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    color: #222222 !important;
    margin-top: 1rem !important;
    margin-bottom: 0.875rem !important;
}

.content-detail-container h3 {
    font-size: 1.25rem !important;
    font-weight: 600 !important;
    color: #222222 !important;
    margin-top: 1.5rem !important;
    margin-bottom: 0.75rem !important;
}

.content-detail-container h4,
.content-detail-container h5,
.content-detail-container h6 {
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    color: #333333 !important;
    margin-top: 1.25rem !important;
    margin-bottom: 0.625rem !important;
}

.content-detail-container strong,
.content-detail-container b {
    font-weight: 600 !important;
    color: #111111 !important;
}

.content-detail-container em,
.content-detail-container i {
    font-style: italic !important;
    color: #555555 !important;
}

.content-detail-container ul {
    list-style-type: disc !important;
    padding-left: 1.5rem !important;
    margin-bottom: 1.25rem !important;
}

.content-detail-container ol {
    list-style-type: decimal !important;
    padding-left: 1.5rem !important;
    margin-bottom: 1.25rem !important;
}

.content-detail-container li {
    margin-bottom: 0.5rem !important;
    line-height: 1.8 !important;
}

.content-detail-container ul ul,
.content-detail-container ol ul,
.content-detail-container ul ol,
.content-detail-container ol ol {
    margin-top: 0.5rem !important;
    margin-bottom: 0 !important;
}

.content-detail-container table {
    display: block !important;
    width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    border-collapse: collapse !important;
    margin-bottom: 1.25rem !important;
    font-size: 0.9375rem !important;
    border: 1px solid #e5e7eb !important;
}

.content-detail-container th {
    background-color: #f9fafb !important;
    color: #111111 !important;
    font-weight: 600 !important;
    padding: 0.75rem 1rem !important;
    text-align: left !important;
    border: 1px solid #e5e7eb !important;
}

.content-detail-container td {
    padding: 0.75rem 1rem !important;
    border: 1px solid #e5e7eb !important;
    color: #444444 !important;
}

.content-detail-container a {
    color: #059669 !important;
    text-decoration: none !important;
}

.content-detail-container a:hover {
    color: #047857 !important;
    text-decoration: underline !important;
}

.content-detail-container blockquote {
    border-left: 3px solid #059669 !important;
    padding: 0.75rem 1rem !important;
    margin: 1.25rem 0 !important;
    background-color: #f0fdf4 !important;
    color: #333333 !important;
}

.content-detail-container code {
    font-family: 'Consolas', 'Monaco', monospace !important;
    font-size: 0.875rem !important;
    background-color: #f3f4f6 !important;
    color: #dc2626 !important;
    padding: 0.125rem 0.375rem !important;
    border-radius: 0.25rem !important;
}

.content-detail-container pre {
    background-color: #1f2937 !important;
    color: #e5e7eb !important;
    padding: 1rem 1.25rem !important;
    border-radius: 0.375rem !important;
    overflow-x: auto !important;
    margin-bottom: 1.25rem !important;
}

.content-detail-container pre code {
    background-color: transparent !important;
    color: inherit !important;
    padding: 0 !important;
}

.content-detail-container img {
    max-width: 100% !important;
    height: auto !important;
    margin: 1rem 0 !important;
    border-radius: 8px !important;
}

.content-detail-container hr {
    border: none !important;
    border-top: 1px solid #e5e7eb !important;
    margin: 2rem 0 !important;
}

@media (max-width: 768px) {
    .content-detail-container {
        font-size: 15px !important;
        line-height: 1.7 !important;
    }

    .content-detail-container h1 {
        font-size: 1.5rem !important;
    }

    .content-detail-container h2 {
        font-size: 1.25rem !important;
    }

    .content-detail-container h3 {
        font-size: 1.125rem !important;
    }

    .content-detail-container table {
        font-size: 0.875rem !important;
    }

    .content-detail-container th,
    .content-detail-container td {
        padding: 0.5rem 0.75rem !important;
    }
}

@media (min-width: 768px) {
    .md\:flex {
        display: flex !important;
    }
}

/* Tab & Accordion smooth transitions */
.tab-fade-transition {
    opacity: 0;
    transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateY(4px);
}
.tab-fade-show {
    opacity: 1;
    transform: translateY(0);
}

/* Custom FAQ empty state styling */
.faq-empty-state {
    padding: 3rem 1.5rem;
    text-align: center;
    background-color: #ffffff;
    border-radius: 0.75rem;
    border: 1px dashed #e5e7eb;
    transition: opacity 0.3s ease;
}

/* 阻止 iOS 移动端聚焦输入框时页面自动放大 */
@media (max-width: 768px) {
    input[type="text"],
    input[type="search"],
    input[type="tel"],
    input[type="email"],
    textarea,
    select {
        font-size: 16px !important;
    }
}

/* 修复富文本列表无小圆点、无序列表缩进失效（高级简约版） */
.list-paddingleft-2 {
    padding-left: 0.75rem !important;
}

.content-detail-container .list-paddingleft-2 {
    padding-left: 1.8rem !important;
}

.vanilla-product-content {
    font-size: 15px !important;
    line-height: 1.8 !important;
    color: #4b5563 !important; /* 优雅的深灰，减少纯黑带来的视觉疲劳 */
}

/* 段落间距 */
.vanilla-product-content p {
    margin-top: 0 !important;
    margin-bottom: 1.25rem !important;
    line-height: 1.8 !important;
    text-indent: 0 !important;
}

/* 粗体强调 */
.vanilla-product-content strong,
.vanilla-product-content b {
    font-weight: 600 !important;
    color: #111827 !important;
}

/* H2 标题样式：彻底去除所有装饰，回归最简约的纯文字排版 */
.vanilla-product-content h2 {
    font-size: 1.25rem !important;
    font-weight: 600 !important;
    color: #111827 !important;
    margin-top: 2rem !important;
    margin-bottom: 0.875rem !important;
    padding-left: 0 !important;
    border: none !important;
    line-height: 1.4 !important;
}

/* H3 标题样式 */
.vanilla-product-content h3 {
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    color: #1f2937 !important;
    margin-top: 1.5rem !important;
    margin-bottom: 0.75rem !important;
    line-height: 1.4 !important;
}

/* 列表容器 */
.vanilla-product-content ul {
    list-style-type: none !important;
    padding-left: 0 !important;
    margin-top: 0.5rem !important;
    margin-bottom: 1.25rem !important;
}

/* 列表项 */
.vanilla-product-content ul li {
    list-style: none !important;
    position: relative !important;
    padding-left: 1rem !important;
    color: #4b5563 !important;
    margin-bottom: 0.5rem !important;
    line-height: 1.7 !important;
    font-size: 14px !important;
}

/* 列表前的绿色微型圆点 */
.vanilla-product-content ul li::before {
    content: "\2022" !important;
    position: absolute !important;
    left: 0.1rem !important;
    color: #16a34a !important;
    font-size: 0.8rem !important;
    top: 0 !important;
}

/* 有序列表 */
.vanilla-product-content ol {
    list-style-type: decimal !important;
    padding-left: 1.25rem !important;
    margin-top: 0.5rem !important;
    margin-bottom: 1.25rem !important;
    color: #4b5563 !important;
}

.vanilla-product-content ol li {
    margin-bottom: 0.5rem !important;
    line-height: 1.7 !important;
    font-size: 14px !important;
}

/* 消除列表内嵌段落引起的额外空行与缩进 */
.vanilla-product-content li p {
    margin: 0 !important;
    padding: 0 !important;
    display: inline !important;
}

/* 富文本插图优化 */
.vanilla-product-content img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 1.5rem auto !important;
    border-radius: 6px !important;
}

/* 富文本表格极简设计 */
.vanilla-product-content table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 1.5rem 0 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    border: none !important;
}

/* 表头单元格 */
.vanilla-product-content th {
    background-color: #f9fafb !important;
    color: #374151 !important;
    font-weight: 600 !important;
    padding: 10px 14px !important;
    text-align: left !important;
    border-bottom: 2px solid #f3f4f6 !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
}

/* 数据单元格 */
.vanilla-product-content td {
    padding: 10px 14px !important;
    color: #4b5563 !important;
    border-bottom: 1px solid #f3f4f6 !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
}

/* 隔行变色 */
.vanilla-product-content tr:nth-child(even) td {
    background-color: #fafbfc !important;
}


/* ==========================================
   📌 修复PC端页面底部白边/白色间隔问题
   ========================================== */

/* 1. 经典粘性页脚（Sticky Footer）方案：当页面内容不足时，将页脚推至最底部，防止露出 body 的白色背景 */
html, body {
    height: 100%;
}
body {
    background-color: #f9fafb !important;
}

#root {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

#root > footer {
    margin-top: auto;
}

/* 2. 媒体查询纠偏：由于 base.css 编译问题，确保 PC 浏览器（宽度 >= 1024px）下绝对不显示移动端白色底部导航条，且页脚外边距正确 */
@media (min-width: 1024px) {
    nav.lg\:hidden {
        display: none !important;
    }
    footer {
        padding-bottom: 0 !important;
    }
}

/* ==========================================
   📌 文章内链产品图片智能响应式浮动布局
   ========================================== */
.article-product-showcase {
    display: block !important;
    text-align: center !important;
    margin: 15px auto !important;
    clear: both;
}
.article-product-showcase img {
    max-width: 180px !important;
    width: 100% !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05) !important;
    margin: 0 !important;
}

@media (min-width: 768px) {
    .article-product-showcase {
        display: inline-block !important;
        float: right !important;
        margin: 5px 0 15px 20px !important;
        clear: none;
    }
    .article-product-showcase img {
        max-width: 140px !important;
    }
}