﻿{"id":9905,"date":"2026-08-05T16:00:24","date_gmt":"2026-08-05T08:00:24","guid":{"rendered":"https:\/\/www.ag-filter.com\/?page_id=9905"},"modified":"2026-08-17T10:52:44","modified_gmt":"2026-08-17T02:52:44","slug":"%e8%89%be%e5%b0%94%e4%bd%b3%e5%87%80%e5%8c%96%e7%a7%91%e6%8a%80%e9%9b%86%e5%9b%a2%e5%b8%b8%e8%a7%81%e9%97%ae%e9%a2%98-%e4%bc%81%e4%b8%9a%e8%b5%84%e8%b4%a8%c2%b7iatf16949%c2%b7cnas%e5%ae%9e%e9%aa%8c","status":"publish","type":"page","link":"https:\/\/www.ag-filter.com\/?page_id=9905","title":{"rendered":"\u5e38\u89c1\u95ee\u9898"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"9905\" class=\"elementor elementor-9905\">\n\t\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5f587fd e-con-full e-con\" data-id=\"5f587fd\" data-element_type=\"container\" data-settings=\"{&quot;content_width&quot;:&quot;full&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2da59a1 elementor-widget elementor-widget-html\" data-id=\"2da59a1\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t   \r\n       <style>\r\n        \/* ========== Colors: #003e80 (\u6df1\u84dd\u4e3b\u5bfc) + #bc1518 (\u7ea2\u8272\u70b9\u7f00) ========== *\/\r\n        *,\r\n        *::before,\r\n        *::after {\r\n            margin: 0;\r\n            padding: 0;\r\n            box-sizing: border-box\r\n        }\r\n\r\n        :root {\r\n            --primary: #003e80;\r\n            --primary-dark: #002855;\r\n            --primary-light: #e6edf5;\r\n            --accent: #bc1518;\r\n            --accent-dark: #9a1113;\r\n            --accent-light: #fbeaea;\r\n            --text: #1A2332;\r\n            --text-muted: #546E7A;\r\n            --text-light: #78909C;\r\n            --border: #D0D7E0;\r\n            --bg: #F4F6FA;\r\n            --card: #FFFFFF;\r\n            --shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);\r\n            --shadow-md: 0 4px 16px rgba(0, 62, 128, .12);\r\n            --radius: 10px;\r\n            --sidebar-w: 280px;\r\n            --max-w: 1340px;\r\n        }\r\n\r\n        html {\r\n            scroll-behavior: smooth;\r\n            scroll-padding-top: 140px;\r\n            -webkit-text-size-adjust: 100%\r\n        }\r\n\r\n        body {\r\n            font-family: 'Noto Sans SC', -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Microsoft YaHei', 'Helvetica Neue', Arial, sans-serif;\r\n            background: var(--bg);\r\n            color: var(--text);\r\n            line-height: 1.75;\r\n            font-size: 15px;\r\n            overflow-x: hidden\r\n        }\r\n\r\n        a {\r\n            color: var(--primary);\r\n            text-decoration: none;\r\n            transition: color .2s\r\n        }\r\n\r\n            a:hover {\r\n                color: var(--accent)\r\n            }\r\n\r\n        img {\r\n            max-width: 100%;\r\n            height: auto\r\n        }\r\n\r\n        \/* ========== Loading ========== *\/\r\n        .loading-mask {\r\n            position: fixed;\r\n            inset: 0;\r\n            background: rgba(255, 255, 255, .85);\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            z-index: 9999;\r\n            flex-direction: column;\r\n            gap: 16px;\r\n        }\r\n\r\n            .loading-mask .spinner {\r\n                width: 40px;\r\n                height: 40px;\r\n                border: 4px solid var(--border);\r\n                border-top-color: var(--primary);\r\n                border-radius: 50%;\r\n                animation: spin .8s linear infinite;\r\n            }\r\n\r\n        @keyframes spin {\r\n            to {\r\n                transform: rotate(360deg);\r\n            }\r\n        }\r\n\r\n        .loading-mask p {\r\n            color: var(--text-muted);\r\n            font-size: 14px;\r\n        }\r\n\r\n        \/* ========== Banner ========== *\/\r\n        .banner-wrap {\r\n            position: relative;\r\n            width: 100%;\r\n            min-height: 260px;\r\n            background: linear-gradient(135deg, #003e80 0%, #002855 55%, #001530 100%);\r\n            overflow: hidden\r\n        }\r\n\r\n        .banner-bg {\r\n            position: absolute;\r\n            inset: 0;\r\n            width: 100%;\r\n            height: 100%;\r\n            object-fit: cover;\r\n            z-index: 1;\r\n            display: block\r\n        }\r\n\r\n            .banner-bg[src=\"\"] {\r\n                display: none\r\n            }\r\n\r\n        .banner-gradient {\r\n            position: absolute;\r\n            inset: 0;\r\n            background: linear-gradient(135deg, rgba(0, 62, 128, .40) 0%, rgba(0, 40, 85, .50) 55%, rgba(0, 21, 48, .60) 100%);\r\n            z-index: 2\r\n        }\r\n\r\n        .banner-content {\r\n            position: relative;\r\n            z-index: 3;\r\n            text-align: center;\r\n            padding: 32px 24px;\r\n            color: #fff;\r\n            max-width: 800px;\r\n            margin: 0 auto\r\n        }\r\n\r\n            .banner-content .banner-icon {\r\n                margin-bottom: 12px;\r\n                opacity: .9\r\n            }\r\n\r\n                .banner-content .banner-icon img {\r\n                    max-height: 60px;\r\n                    width: auto;\r\n                    display: block;\r\n                    margin: 0 auto\r\n                }\r\n\r\n            .banner-content h1 {\r\n                font-size: clamp(18px, 3.2vw, 30px);\r\n                font-weight: 900;\r\n                margin-bottom: 8px;\r\n                letter-spacing: 1px;\r\n                text-shadow: 0 2px 10px rgba(0, 0, 0, .35)\r\n            }\r\n\r\n            .banner-content p {\r\n                font-size: clamp(12px, 1.8vw, 15px);\r\n                opacity: .9;\r\n                margin-bottom: 18px;\r\n                font-weight: 300;\r\n                line-height: 1.6\r\n            }\r\n\r\n            .banner-content .banner-tags {\r\n                display: flex;\r\n                flex-wrap: wrap;\r\n                gap: 8px;\r\n                justify-content: center\r\n            }\r\n\r\n                .banner-content .banner-tags span {\r\n                    background: rgba(255, 255, 255, .14);\r\n                    border: 1px solid rgba(255, 255, 255, .22);\r\n                    padding: 5px 14px;\r\n                    border-radius: 20px;\r\n                    font-size: 12px;\r\n                    backdrop-filter: blur(4px)\r\n                }\r\n\r\n        \/* ========== Layout ========== *\/\r\n        .layout {\r\n            max-width: var(--max-w);\r\n            margin: 0 auto;\r\n            padding: 24px 20px 40px;\r\n            display: grid;\r\n            grid-template-columns: var(--sidebar-w) 1fr;\r\n            gap: 30px;\r\n            align-items: start\r\n        }\r\n\r\n        .sidebar {\r\n            position: sticky;\r\n            top: 170px;\r\n            max-height: calc(100vh - 160px);\r\n            overflow-y: auto;\r\n            overflow-x: hidden;\r\n            padding-right: 8px\r\n        }\r\n\r\n            .sidebar::-webkit-scrollbar {\r\n                width: 5px\r\n            }\r\n\r\n            .sidebar::-webkit-scrollbar-track {\r\n                background: transparent\r\n            }\r\n\r\n            .sidebar::-webkit-scrollbar-thumb {\r\n                background: var(--border);\r\n                border-radius: 3px\r\n            }\r\n\r\n                .sidebar::-webkit-scrollbar-thumb:hover {\r\n                    background: var(--text-light)\r\n                }\r\n\r\n        \/* ========== Sidebar Search ========== *\/\r\n        .sidebar-search {\r\n            position: relative;\r\n            margin-bottom: 16px;\r\n            z-index: 20;\r\n            pointer-events: auto\r\n        }\r\n\r\n            .sidebar-search input {\r\n                width: 100%;\r\n                height: 42px;\r\n                padding: 0 14px 0 38px;\r\n                border: 1.5px solid var(--border);\r\n                border-radius: 8px;\r\n                font-size: 13px;\r\n                font-family: inherit;\r\n                background: var(--card);\r\n                color: var(--text);\r\n                transition: border-color .2s, box-shadow .2s;\r\n                pointer-events: auto !important;\r\n                cursor: text !important;\r\n                opacity: 1 !important;\r\n                visibility: visible !important;\r\n                display: block !important;\r\n                position: relative !important;\r\n                z-index: 20 !important\r\n            }\r\n\r\n                .sidebar-search input:focus {\r\n                    outline: none;\r\n                    border-color: var(--primary);\r\n                    box-shadow: 0 0 0 3px rgba(0, 62, 128, .1)\r\n                }\r\n\r\n                .sidebar-search input::placeholder {\r\n                    color: #78909C;\r\n                    opacity: 1\r\n                }\r\n\r\n            .sidebar-search .search-icon {\r\n                position: absolute;\r\n                left: 12px;\r\n                top: 50%;\r\n                transform: translateY(-50%);\r\n                font-size: 14px;\r\n                opacity: .4;\r\n                pointer-events: none;\r\n                z-index: 21\r\n            }\r\n\r\n            .sidebar-search .search-count {\r\n                position: absolute;\r\n                right: 10px;\r\n                top: 50%;\r\n                transform: translateY(-50%);\r\n                font-size: 11px;\r\n                color: var(--text-light);\r\n                white-space: nowrap;\r\n                pointer-events: none;\r\n                z-index: 21\r\n            }\r\n\r\n        input[type=\"search\"]::-webkit-search-cancel-button {\r\n            -webkit-appearance: none\r\n        }\r\n\r\n        input[type=\"search\"]::-ms-clear {\r\n            display: none\r\n        }\r\n\r\n        \/* ========== Sidebar Nav ========== *\/\r\n        .nav-section {\r\n            margin-bottom: 10px\r\n        }\r\n\r\n        .nav-section-title {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n            padding: 9px 12px;\r\n            border-radius: 8px;\r\n            font-weight: 700;\r\n            font-size: 15px;\r\n            color: var(--text);\r\n            transition: all .2s;\r\n            cursor: pointer\r\n        }\r\n\r\n            .nav-section-title:hover {\r\n                background: var(--primary-light)\r\n            }\r\n\r\n            .nav-section-title.active {\r\n                background: var(--primary);\r\n                color: #fff\r\n            }\r\n\r\n        .nav-number {\r\n            font-size: 11px;\r\n            font-weight: 500;\r\n            padding: 2px 7px;\r\n            border-radius: 4px;\r\n            background: var(--primary-light);\r\n            color: var(--primary);\r\n            flex-shrink: 0\r\n        }\r\n\r\n        .nav-section-title.active .nav-number {\r\n            background: rgba(255, 255, 255, .2);\r\n            color: #fff\r\n        }\r\n\r\n        .nav-count {\r\n            margin-left: auto;\r\n            font-size: 10px;\r\n            background: var(--border);\r\n            color: var(--text-muted);\r\n            padding: 1px 6px;\r\n            border-radius: 10px;\r\n            flex-shrink: 0\r\n        }\r\n\r\n        .nav-section-title.active .nav-count {\r\n            background: rgba(255, 255, 255, .2);\r\n            color: #fff\r\n        }\r\n\r\n        .nav-subsections {\r\n            list-style: none;\r\n            margin: 4px 0 0;\r\n            padding: 0 0 0 16px;\r\n            max-height: 0;\r\n            overflow: hidden;\r\n            transition: max-height .3s ease\r\n        }\r\n\r\n        .nav-section.open .nav-subsections {\r\n            max-height: 600px\r\n        }\r\n\r\n        .nav-subsections li {\r\n            margin: 2px 0\r\n        }\r\n\r\n        .nav-subsections a {\r\n            display: block;\r\n            padding: 6px 10px;\r\n            font-size: 14px;\r\n            color: var(--text-muted);\r\n            border-radius: 6px;\r\n            transition: all .2s;\r\n            line-height: 1.4;\r\n            cursor: pointer;\r\n        }\r\n\r\n            .nav-subsections a:hover {\r\n                background: var(--primary-light);\r\n                color: var(--primary)\r\n            }\r\n\r\n            .nav-subsections a.active {\r\n                background: var(--primary-light);\r\n                color: var(--primary);\r\n                font-weight: 500\r\n            }\r\n\r\n        \/* ========== Content ========== *\/\r\n        .content {\r\n            min-width: 0\r\n        }\r\n\r\n        .section {\r\n            margin-bottom: 40px;\r\n            scroll-margin-top: 140px\r\n        }\r\n\r\n        .section-header {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n            padding: 16px 22px;\r\n            border-radius: var(--radius);\r\n            color: #fff;\r\n            margin-bottom: 20px;\r\n            box-shadow: var(--shadow-md)\r\n        }\r\n\r\n        .section-badge {\r\n            font-size: 13px;\r\n            font-weight: 700;\r\n            padding: 4px 10px;\r\n            background: rgba(255, 255, 255, .18);\r\n            border-radius: 6px;\r\n            flex-shrink: 0\r\n        }\r\n\r\n        .section-title {\r\n            font-size: 20px;\r\n            font-weight: 700;\r\n            margin: 0\r\n        }\r\n\r\n        .section-desc {\r\n            margin-left: auto;\r\n            font-size: 13px;\r\n            opacity: .85;\r\n            font-weight: 300\r\n        }\r\n\r\n        \/* ========== Section color accents ========== *\/\r\n        .section-color-0 .section-header {\r\n            background: linear-gradient(135deg, #003e80, #004b99)\r\n        }\r\n\r\n        .section-color-1 .section-header {\r\n            background: linear-gradient(135deg, #002855, #003366)\r\n        }\r\n\r\n        .section-color-2 .section-header {\r\n            background: linear-gradient(135deg, #003e80, #0059b3)\r\n        }\r\n\r\n        .section-color-3 .section-header {\r\n            background: linear-gradient(135deg, #002855, #003e80)\r\n        }\r\n\r\n        .section-color-4 .section-header {\r\n            background: linear-gradient(135deg, #003e80, #004080)\r\n        }\r\n\r\n        .section-color-5 .section-header {\r\n            background: linear-gradient(135deg, #bc1518, #d42124)\r\n        }\r\n\r\n        .section-color-6 .section-header {\r\n            background: linear-gradient(135deg, #002855, #003e80)\r\n        }\r\n\r\n        .section-color-5 .subsection-title {\r\n            border-left-color: #bc1518;\r\n            background: linear-gradient(90deg, #fbeaea 0%, transparent 100%)\r\n        }\r\n\r\n        .subsection {\r\n            margin-bottom: 28px;\r\n            scroll-margin-top: 140px\r\n        }\r\n\r\n        .subsection-title {\r\n            font-size: 16px;\r\n            font-weight: 700;\r\n            color: var(--text);\r\n            padding: 8px 0 8px 14px;\r\n            border-left: 4px solid var(--primary);\r\n            margin-bottom: 14px;\r\n            background: linear-gradient(90deg, var(--primary-light) 0%, transparent 100%);\r\n            border-radius: 0 6px 6px 0\r\n        }\r\n\r\n        \/* ========== FAQ Items ========== *\/\r\n        .faq-item {\r\n            background: #fff;\r\n            border: 1px solid var(--border);\r\n            border-radius: 10px;\r\n            margin-bottom: 12px;\r\n            overflow: hidden;\r\n            box-shadow: 0 1px 4px rgba(0, 0, 0, .04);\r\n            transition: all .25s\r\n        }\r\n\r\n            .faq-item:hover {\r\n                box-shadow: 0 2px 8px rgba(2, 62, 128, .12);\r\n                border-color: var(--primary)\r\n            }\r\n\r\n            .faq-item.highlight {\r\n                border-color: #bc1518;\r\n                box-shadow: 0 0 0 2px rgba(188, 21, 24, .1)\r\n            }\r\n\r\n        .faq-question {\r\n            display: grid;\r\n            grid-template-columns: 36px 1fr;\r\n            align-items: center;\r\n            gap: 12px;\r\n            padding: 16px 20px;\r\n            cursor: pointer;\r\n            font-size: 14.5px;\r\n            color: var(--text);\r\n            list-style: none;\r\n            position: relative;\r\n            background: #fff\r\n        }\r\n\r\n            .faq-question::-webkit-details-marker {\r\n                display: none\r\n            }\r\n\r\n            .faq-question::before {\r\n                content: \"Q\";\r\n                display: flex;\r\n                align-items: center;\r\n                justify-content: center;\r\n                width: 28px;\r\n                height: 28px;\r\n                background: linear-gradient(135deg, #003e80, #004d99);\r\n                color: #fff;\r\n                border-radius: 6px;\r\n                font-size: 13px;\r\n                font-weight: 700;\r\n                flex-shrink: 0;\r\n                box-shadow: 0 2px 6px rgba(0, 62, 128, .25);\r\n                transition: all .2s;\r\n                grid-column: 1\r\n            }\r\n\r\n        .faq-item[open] .faq-question::before {\r\n            background: linear-gradient(135deg, #002855, #003e80);\r\n            box-shadow: 0 2px 8px rgba(0, 40, 85, .3)\r\n        }\r\n\r\n        .faq-q-text {\r\n            grid-column: 2;\r\n            font-weight: 600;\r\n            color: var(--text);\r\n            line-height: 1.5\r\n        }\r\n\r\n        .faq-answer {\r\n            grid-column: 1\/-1;\r\n            padding: 0;\r\n            border-top: 1px solid var(--border);\r\n            max-height: 0;\r\n            overflow: hidden;\r\n            transition: max-height .4s ease;\r\n            visibility: hidden;\r\n            position: relative\r\n        }\r\n\r\n        .faq-item[open] .faq-answer {\r\n            max-height: 2000px;\r\n            visibility: visible\r\n        }\r\n\r\n        .faq-answer-content {\r\n            display: grid;\r\n            grid-template-columns: 36px 1fr;\r\n            gap: 12px;\r\n            padding: 14px 20px;\r\n            align-items: center\r\n        }\r\n\r\n        .ans-badge {\r\n            flex-shrink: 0;\r\n            width: 28px;\r\n            height: 28px;\r\n            background: linear-gradient(135deg, #bc1518, #d42124);\r\n            color: #fff;\r\n            border-radius: 5px;\r\n            font-size: 13px;\r\n            font-weight: 700;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            box-shadow: 0 1px 4px rgba(188, 21, 24, .2)\r\n        }\r\n\r\n        .ans-text {\r\n            flex: 1;\r\n            line-height: 1.7\r\n        }\r\n\r\n            .ans-text p {\r\n                margin: 0 0 10px 0\r\n            }\r\n\r\n                .ans-text p:last-child {\r\n                    margin: 0\r\n                }\r\n\r\n        .faq-answer strong {\r\n            font-weight: 700;\r\n            color: var(--primary-dark)\r\n        }\r\n\r\n        .faq-answer ul,\r\n        .faq-answer ol {\r\n            margin: 8px 0 10px 0;\r\n            padding-left: 0;\r\n            list-style: none\r\n        }\r\n\r\n        .faq-answer li {\r\n            margin-bottom: 6px;\r\n            color: #333;\r\n            padding-left: 8px\r\n        }\r\n\r\n            .faq-answer li::before {\r\n                content: \"\u2022\";\r\n                color: var(--accent);\r\n                margin-right: 6px\r\n            }\r\n\r\n        .faq-answer .ans-label {\r\n            display: block;\r\n            font-weight: 700;\r\n            color: var(--primary);\r\n            margin: 6px 0 0 16px;\r\n            font-size: 15px\r\n        }\r\n\r\n        .table-wrap {\r\n            overflow-x: auto;\r\n            margin: 12px 0;\r\n            border: 1px solid var(--border);\r\n            border-radius: 8px;\r\n            -webkit-overflow-scrolling: touch\r\n        }\r\n\r\n        table {\r\n            width: 100%;\r\n            border-collapse: collapse;\r\n            font-size: 13px;\r\n            min-width: 400px\r\n        }\r\n\r\n        thead {\r\n            background: var(--primary-light)\r\n        }\r\n\r\n        th {\r\n            padding: 10px 14px;\r\n            text-align: left;\r\n            font-weight: 700;\r\n            color: var(--primary);\r\n            border-bottom: 2px solid var(--primary);\r\n            white-space: nowrap\r\n        }\r\n\r\n        td {\r\n            padding: 8px 14px;\r\n            border-bottom: 1px solid var(--border);\r\n            color: var(--text)\r\n        }\r\n\r\n        tbody tr:nth-child(even) {\r\n            background: #FAFCFE\r\n        }\r\n\r\n        tbody tr:hover {\r\n            background: var(--primary-light)\r\n        }\r\n\r\n        td:last-child,\r\n        th:last-child {\r\n            border-right: none\r\n        }\r\n\r\n        \/* ========== Mobile Menu Toggle ========== *\/\r\n        .menu-toggle {\r\n            display: none;\r\n            position: fixed;\r\n            left: 0;\r\n            top: 50%;\r\n            transform: translateY(-50%);\r\n            width: 32px;\r\n            height: 48px;\r\n            border: none;\r\n            background: rgba(0, 62, 128, .9);\r\n            color: #fff;\r\n            font-size: 14px;\r\n            cursor: pointer;\r\n            z-index: 100;\r\n            flex-shrink: 0;\r\n            align-items: center;\r\n            justify-content: center;\r\n            box-shadow: 2px 0 8px rgba(0, 0, 0, .15);\r\n            border-radius: 0 6px 6px 0\r\n        }\r\n\r\n            .menu-toggle:hover {\r\n                background: var(--accent)\r\n            }\r\n\r\n        \/* ========== No Results ========== *\/\r\n        .no-results {\r\n            text-align: center;\r\n            padding: 60px 20px;\r\n            color: var(--text-muted)\r\n        }\r\n\r\n            .no-results h3 {\r\n                font-size: 18px;\r\n                margin-bottom: 8px;\r\n                color: var(--text)\r\n            }\r\n\r\n        .empty-faq-tip {\r\n            text-align: center;\r\n            padding: 20px;\r\n            color: var(--text-light);\r\n            font-size: 14px;\r\n        }\r\n\r\n        \/* ========== Sidebar Overlay (Mobile) ========== *\/\r\n        .sidebar-overlay {\r\n            display: none;\r\n            position: fixed;\r\n            inset: 0;\r\n            background: rgba(0, 0, 0, .4);\r\n            z-index: 98;\r\n            opacity: 0;\r\n            transition: opacity .3s\r\n        }\r\n\r\n            .sidebar-overlay.show {\r\n                display: block;\r\n                opacity: 1\r\n            }\r\n\r\n        \/* ========== Responsive ========== *\/\r\n        @media(max-width:1024px) {\r\n            .layout {\r\n                grid-template-columns: 1fr;\r\n                padding: 16px\r\n            }\r\n\r\n            .menu-toggle {\r\n                display: flex\r\n            }\r\n\r\n            .sidebar {\r\n                position: fixed;\r\n                top: 50%;\r\n                left: -300px;\r\n                transform: translateY(-50%);\r\n                width: 280px;\r\n                max-height: 80vh;\r\n                background: #fff;\r\n                z-index: 99;\r\n                transition: left .3s ease, padding .3s ease;\r\n                padding: 16px;\r\n                box-shadow: 0 4px 20px rgba(0, 0, 0, .15);\r\n                border-radius: 8px 0 0 8px;\r\n                pointer-events: none\r\n            }\r\n\r\n                .sidebar.show {\r\n                    left: 0;\r\n                    transform: translateY(-50%);\r\n                    pointer-events: auto\r\n                }\r\n\r\n                    .sidebar.show .sidebar-search {\r\n                        z-index: 101\r\n                    }\r\n\r\n                        .sidebar.show .sidebar-search input {\r\n                            pointer-events: auto !important\r\n                        }\r\n        }\r\n\r\n        @media(max-width:640px) {\r\n            .banner-wrap {\r\n                min-height: 160px !important\r\n            }\r\n\r\n            .banner-content {\r\n                padding: 16px 12px\r\n            }\r\n\r\n                .banner-content .banner-icon img {\r\n                    max-height: 36px\r\n                }\r\n\r\n                .banner-content h1 {\r\n                    font-size: 15px;\r\n                    margin-bottom: 4px\r\n                }\r\n\r\n                .banner-content p {\r\n                    font-size: 11px;\r\n                    margin-bottom: 10px;\r\n                    line-height: 1.5\r\n                }\r\n\r\n                .banner-content .banner-tags {\r\n                    gap: 4px\r\n                }\r\n\r\n                    .banner-content .banner-tags span {\r\n                        font-size: 9px;\r\n                        padding: 2px 8px;\r\n                        border-radius: 10px\r\n                    }\r\n\r\n            .section-header {\r\n                padding: 10px 12px;\r\n                flex-wrap: wrap\r\n            }\r\n\r\n            .section-title {\r\n                font-size: 15px\r\n            }\r\n\r\n            .section-desc {\r\n                display: none\r\n            }\r\n\r\n            .faq-question {\r\n                padding: 10px 12px;\r\n                font-size: 13px;\r\n                align-items: center;\r\n                display: grid;\r\n                grid-template-columns: 28px 1fr;\r\n                gap: 10px\r\n            }\r\n\r\n                .faq-question::before {\r\n                    width: 24px;\r\n                    height: 24px;\r\n                    font-size: 12px\r\n                }\r\n\r\n            .faq-answer {\r\n                padding: 0\r\n            }\r\n\r\n            .faq-answer-content {\r\n                display: grid;\r\n                grid-template-columns: 28px 1fr;\r\n                gap: 10px;\r\n                padding: 10px 12px;\r\n                align-items: center\r\n            }\r\n\r\n            .ans-badge {\r\n                width: 24px;\r\n                height: 24px;\r\n                font-size: 12px;\r\n                margin-top: 0\r\n            }\r\n\r\n            .ans-text {\r\n                font-size: 13px\r\n            }\r\n\r\n            .faq-answer ul,\r\n            .faq-answer ol {\r\n                margin: 4px 0 4px 0;\r\n                padding-left: 0\r\n            }\r\n\r\n            .faq-answer li {\r\n                font-size: 13px;\r\n                line-height: 1.65\r\n            }\r\n\r\n            th,\r\n            td {\r\n                padding: 6px 8px;\r\n                font-size: 11px\r\n            }\r\n        }\r\n\r\n        \/* ========== Print ========== *\/\r\n        @media print {\r\n            .sidebar,\r\n            .sidebar-overlay {\r\n                display: none\r\n            }\r\n\r\n            .banner-wrap {\r\n                min-height: 120px !important\r\n            }\r\n\r\n            .layout {\r\n                display: block\r\n            }\r\n\r\n            .faq-item {\r\n                border: 1px solid #ccc;\r\n                break-inside: avoid\r\n            }\r\n\r\n            .faq-question::before,\r\n            .faq-question::after {\r\n                display: none\r\n            }\r\n\r\n            details[open] .faq-answer,\r\n            details .faq-answer {\r\n                display: block !important;\r\n                max-height: none !important;\r\n                visibility: visible !important\r\n            }\r\n\r\n            .faq-item:not([open]) .faq-answer {\r\n                display: block !important\r\n            }\r\n\r\n            .section {\r\n                page-break-before: auto\r\n            }\r\n        }\r\n    <\/style>\r\n    <!-- ===== Loading ===== -->\r\n    <div class=\"loading-mask\" id=\"loadingMask\">\r\n        <div class=\"spinner\"><\/div>\r\n        <p>\u52a0\u8f7dFAQ\u6570\u636e\u4e2d...<\/p>\r\n    <\/div>\r\n\r\n    <!-- ===== Banner ===== -->\r\n    <section class=\"banner-wrap\">\r\n        <img decoding=\"async\" class=\"banner-bg\" src=\"https:\/\/www.ag-filter.com\/wp-content\/uploads\/2026\/05\/1.png\" alt=\"\u827e\u5c14\u4f73\u51c0\u5316\u79d1\u6280\u96c6\u56e2\">\r\n        <div class=\"banner-gradient\"><\/div>\r\n        <div class=\"banner-content\">\r\n            <div class=\"banner-icon\"><img decoding=\"async\" src=\"https:\/\/www.ag-filter.com\/wp-content\/uploads\/2023\/07\/logo.svg\" alt=\"\u827e\u5c14\u4f73\u51c0\u5316\u79d1\u6280\u96c6\u56e2\"><\/div>\r\n            <h1>\u827e\u5c14\u4f73\u51c0\u5316\u79d1\u6280\u96c6\u56e2\uff08\u5e7f\u4e1c\uff09\u6709\u9650\u516c\u53f8<\/h1>\r\n            <p>\u5e38\u89c1\u95ee\u9898\u6743\u5a01\u89e3\u7b54 \u00b7 \u56fd\u5bb6\u7ea7\u4e13\u7cbe\u7279\u65b0\u300c\u5c0f\u5de8\u4eba\u300d\u4f01\u4e1a \u00b7 \u5168\u573a\u666f\u7a7a\u6c14\u51c0\u5316\u8fc7\u6ee4\u4e0e\u73af\u5883\u5065\u5eb7\u89e3\u51b3\u65b9\u6848\u670d\u52a1\u5546<\/p>\r\n            <div class=\"banner-tags\">\r\n                <span>\u521b\u7acb\u4e8e2014\u5e74<\/span>\r\n                <span>\u7d2f\u8ba1\u4ea4\u4ed8\u8d851.07\u4ebf\u5957<\/span>\r\n                <span>CNAS\u56fd\u5bb6\u8ba4\u53ef\u5b9e\u9a8c\u5ba4<\/span>\r\n                <span>\u5168\u7403\u56db\u5927\u5236\u9020\u57fa\u5730<\/span>\r\n            <\/div>\r\n        <\/div>\r\n    <\/section>\r\n\r\n    <!-- ===== Mobile Menu Toggle ===== -->\r\n    <button class=\"menu-toggle\" id=\"menuToggle\" aria-label=\"\u6253\u5f00\u5bfc\u822a\u83dc\u5355\">\u25b6<\/button>\r\n    <div class=\"sidebar-overlay\" id=\"sidebarOverlay\"><\/div>\r\n\r\n    <!-- ===== Layout ===== -->\r\n    <div class=\"layout\">\r\n        <!-- Sidebar -->\r\n        <aside class=\"sidebar\" id=\"sidebar\">\r\n            <div class=\"sidebar-search\">\r\n                <span class=\"search-icon\">\ud83d\udd0d<\/span>\r\n                <input type=\"search\" id=\"faqSearch\" placeholder=\"\u641c\u7d22\u95ee\u9898\u5173\u952e\u8bcd\u2026\" aria-label=\"\u641c\u7d22FAQ\u95ee\u9898\">\r\n                <span class=\"search-count\" id=\"searchCount\" style=\"display:none\"><\/span>\r\n            <\/div>\r\n            <nav id=\"navContainer\">\r\n                <!-- \u7531 JavaScript \u52a8\u6001\u751f\u6210 -->\r\n            <\/nav>\r\n        <\/aside>\r\n\r\n        <!-- Main Content -->\r\n        <div class=\"content\" id=\"mainContent\">\r\n            <div id=\"noResults\" class=\"no-results\" style=\"display:none\">\r\n                <h3>\u672a\u627e\u5230\u76f8\u5173\u95ee\u9898<\/h3>\r\n                <p>\u8bf7\u5c1d\u8bd5\u4f7f\u7528\u5176\u4ed6\u5173\u952e\u8bcd\u641c\u7d22<\/p>\r\n            <\/div>\r\n            <!-- \u7531 JavaScript \u52a8\u6001\u751f\u6210 -->\r\n            <div id=\"faqContent\"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n        \/\/ ============================================================\r\n        \/\/  \u914d\u7f6e\uff1aAPI \u5730\u5740\r\n        \/\/ ============================================================\r\n        var API_BASE = 'https:\/\/web.ag-filter.com:8443\/api\/FAQ';\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u6570\u636e\u72b6\u6001\r\n        \/\/ ============================================================\r\n        var categoryTree = [];\r\n        var allFaqs = [];\r\n        var flatCategories = {};\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u989c\u8272\u914d\u7f6e\r\n        \/\/ ============================================================\r\n        var COLOR_CLASSES = [\r\n            'section-color-0',\r\n            'section-color-1',\r\n            'section-color-2',\r\n            'section-color-3',\r\n            'section-color-4',\r\n            'section-color-5',\r\n            'section-color-6'\r\n        ];\r\n\r\n        \/\/ ============================================================\r\n        \/\/  DOM \u5f15\u7528\r\n        \/\/ ============================================================\r\n        var loadingMask = document.getElementById('loadingMask');\r\n        var navContainer = document.getElementById('navContainer');\r\n        var faqContent = document.getElementById('faqContent');\r\n        var searchInput = document.getElementById('faqSearch');\r\n        var searchCount = document.getElementById('searchCount');\r\n        var noResults = document.getElementById('noResults');\r\n        var menuToggle = document.getElementById('menuToggle');\r\n        var sidebar = document.getElementById('sidebar');\r\n        var sidebarOverlay = document.getElementById('sidebarOverlay');\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u5b89\u5168\u83b7\u53d6 jQuery\uff08\u517c\u5bb9 WordPress\uff09\r\n        \/\/ ============================================================\r\n        var $j = null;\r\n        if (typeof jQuery !== 'undefined') {\r\n            $j = jQuery;\r\n        } else if (typeof window.jQuery !== 'undefined') {\r\n            $j = window.jQuery;\r\n        }\r\n\r\n        \/\/ \u5982\u679c jQuery \u672a\u52a0\u8f7d\uff0c\u4f7f\u7528\u539f\u751f fetch \u6216 XMLHttpRequest\r\n        function makeRequest(url, callback) {\r\n            var xhr = new XMLHttpRequest();\r\n            xhr.open('GET', url, true);\r\n            xhr.onreadystatechange = function () {\r\n                if (xhr.readyState === 4) {\r\n                    if (xhr.status === 200) {\r\n                        try {\r\n                            var data = JSON.parse(xhr.responseText);\r\n                            callback(null, data);\r\n                        } catch (e) {\r\n                            callback(e, null);\r\n                        }\r\n                    } else {\r\n                        callback(new Error('\u8bf7\u6c42\u5931\u8d25: ' + xhr.status), null);\r\n                    }\r\n                }\r\n            };\r\n            xhr.onerror = function () {\r\n                callback(new Error('\u7f51\u7edc\u8bf7\u6c42\u5931\u8d25'), null);\r\n            };\r\n            xhr.send();\r\n        }\r\n\r\n        \/\/ ============================================================\r\n        \/\/  API \u8c03\u7528\uff08\u4f18\u5148\u4f7f\u7528 jQuery\uff0c\u56de\u9000\u5230\u539f\u751f XHR\uff09\r\n        \/\/ ============================================================\r\n\r\n        function fetchCategories() {\r\n            return new Promise(function (resolve, reject) {\r\n                var url = API_BASE + '\/categories';\r\n\r\n                if ($j) {\r\n                    \/\/ \u4f7f\u7528 jQuery\r\n                    $j.ajax({\r\n                        url: url,\r\n                        type: 'GET',\r\n                        dataType: 'json',\r\n                        success: function (response) {\r\n                            if (response.code === 200 || response.success) {\r\n                                var data = response.data || [];\r\n                                if (data.length > 0 && data[0].Children !== undefined) {\r\n                                    resolve(data);\r\n                                } else {\r\n                                    resolve(buildTreeFromFlat(data));\r\n                                }\r\n                            } else {\r\n                                resolve([]);\r\n                            }\r\n                        },\r\n                        error: function (xhr, status, error) {\r\n                            reject(error);\r\n                        }\r\n                    });\r\n                } else {\r\n                    \/\/ \u4f7f\u7528\u539f\u751f XHR\r\n                    makeRequest(url, function (err, response) {\r\n                        if (err) {\r\n                            reject(err);\r\n                            return;\r\n                        }\r\n                        if (response.code === 200 || response.success) {\r\n                            var data = response.data || [];\r\n                            if (data.length > 0 && data[0].Children !== undefined) {\r\n                                resolve(data);\r\n                            } else {\r\n                                resolve(buildTreeFromFlat(data));\r\n                            }\r\n                        } else {\r\n                            resolve([]);\r\n                        }\r\n                    });\r\n                }\r\n            });\r\n        }\r\n\r\n        function buildTreeFromFlat(items) {\r\n            var map = {};\r\n            var roots = [];\r\n\r\n            items.forEach(function (item) {\r\n                map[item.Id] = { ...item, Children: [] };\r\n            });\r\n\r\n            items.forEach(function (item) {\r\n                if (item.ParentId === null || item.ParentId === 0 || item.ParentId === undefined) {\r\n                    roots.push(map[item.Id]);\r\n                } else if (map[item.ParentId]) {\r\n                    map[item.ParentId].Children.push(map[item.Id]);\r\n                } else {\r\n                    roots.push(map[item.Id]);\r\n                }\r\n            });\r\n\r\n            return roots;\r\n        }\r\n\r\n        function fetchAllFaqs() {\r\n            return new Promise(function (resolve, reject) {\r\n                var allData = [];\r\n                var page = 1;\r\n                var pageSize = 100;\r\n                var hasMore = true;\r\n\r\n                function fetchPage() {\r\n                    var url = API_BASE + '\/faqs?pageNumber=' + page + '&pageSize=' + pageSize;\r\n\r\n                    if ($j) {\r\n                        \/\/ \u4f7f\u7528 jQuery\r\n                        $j.ajax({\r\n                            url: url,\r\n                            type: 'GET',\r\n                            dataType: 'json',\r\n                            success: function (response) {\r\n                                if (response.code === 200 || response.success) {\r\n                                    var result = response.data;\r\n                                    var list = result.DataList || [];\r\n                                    allData = allData.concat(list);\r\n                                    var total = Number(result.TotalCount) || 0;\r\n                                    hasMore = allData.length < total;\r\n                                    if (hasMore) {\r\n                                        page++;\r\n                                        fetchPage();\r\n                                    } else {\r\n                                        resolve(allData);\r\n                                    }\r\n                                } else {\r\n                                    resolve(allData);\r\n                                }\r\n                            },\r\n                            error: function (xhr, status, error) {\r\n                                reject(error);\r\n                            }\r\n                        });\r\n                    } else {\r\n                        \/\/ \u4f7f\u7528\u539f\u751f XHR\r\n                        makeRequest(url, function (err, response) {\r\n                            if (err) {\r\n                                reject(err);\r\n                                return;\r\n                            }\r\n                            if (response.code === 200 || response.success) {\r\n                                var result = response.data;\r\n                                var list = result.DataList || [];\r\n                                allData = allData.concat(list);\r\n                                var total = Number(result.TotalCount) || 0;\r\n                                hasMore = allData.length < total;\r\n                                if (hasMore) {\r\n                                    page++;\r\n                                    fetchPage();\r\n                                } else {\r\n                                    resolve(allData);\r\n                                }\r\n                            } else {\r\n                                resolve(allData);\r\n                            }\r\n                        });\r\n                    }\r\n                }\r\n\r\n                fetchPage();\r\n            });\r\n        }\r\n\r\n        function loadAllData() {\r\n            Promise.all([\r\n                fetchCategories(),\r\n                fetchAllFaqs()\r\n            ]).then(function (results) {\r\n                var categories = results[0];\r\n                var faqs = results[1];\r\n\r\n                if (categories.length > 0 && categories[0].Children !== undefined) {\r\n                    categoryTree = categories;\r\n                } else {\r\n                    categoryTree = buildTreeFromFlat(categories);\r\n                }\r\n\r\n                allFaqs = faqs;\r\n\r\n                flatCategories = {};\r\n                flattenCategories(categoryTree);\r\n\r\n                renderSidebar();\r\n                renderContent();\r\n\r\n                bindSearch();\r\n                bindNavClicks();\r\n\r\n                loadingMask.style.display = 'none';\r\n\r\n            }).catch(function (error) {\r\n                loadingMask.innerHTML = '<p style=\"color:#bc1518;\">\u52a0\u8f7d\u5931\u8d25\uff0c\u8bf7\u5237\u65b0\u9875\u9762\u91cd\u8bd5<br><small>' + (error.message || error) +\r\n                    '<\/small><\/p>';\r\n            });\r\n        }\r\n\r\n        function flattenCategories(categories) {\r\n            categories.forEach(function (cat) {\r\n                flatCategories[cat.Id] = cat;\r\n                if (cat.Children && cat.Children.length > 0) {\r\n                    flattenCategories(cat.Children);\r\n                }\r\n            });\r\n        }\r\n\r\n        function getFaqCount(categoryId) {\r\n            var ids = getCategoryAndChildrenIds(categoryId);\r\n            return allFaqs.filter(function (f) {\r\n                return f.CategoryId !== null && f.CategoryId !== undefined && ids.indexOf(f.CategoryId) !== -1;\r\n            }).length;\r\n        }\r\n\r\n        function getCategoryAndChildrenIds(categoryId) {\r\n            var ids = [categoryId];\r\n            var cat = flatCategories[categoryId];\r\n            if (cat && cat.Children) {\r\n                cat.Children.forEach(function (child) {\r\n                    ids = ids.concat(getCategoryAndChildrenIds(child.Id));\r\n                });\r\n            }\r\n            return ids;\r\n        }\r\n\r\n        function getCategoryName(categoryId) {\r\n            var cat = flatCategories[categoryId];\r\n            return cat ? cat.Name : '\u672a\u5206\u7c7b';\r\n        }\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u6e32\u67d3\uff1a\u4fa7\u8fb9\u680f\r\n        \/\/ ============================================================\r\n\r\n        function renderSidebar() {\r\n            if (!navContainer) return;\r\n\r\n            if (categoryTree.length === 0) {\r\n                navContainer.innerHTML = '<div style=\"padding:20px;text-align:center;color:#999;\">\u6682\u65e0\u5206\u7c7b\u6570\u636e<\/div>';\r\n                return;\r\n            }\r\n\r\n            var html = '';\r\n\r\n            categoryTree.forEach(function (cat, idx) {\r\n                var number = '2.' + (idx + 1);\r\n                var count = getFaqCount(cat.Id);\r\n                var isOpen = idx === 0 ? 'open' : '';\r\n\r\n                html += '<div class=\"nav-section ' + isOpen + '\" data-nav=\"' + cat.Id + '\" data-order=\"' + (idx + 1) +\r\n                    '\">';\r\n                html += '<div class=\"nav-section-title\" data-id=\"' + cat.Id + '\">';\r\n                html += '<span class=\"nav-number\">' + number + '<\/span>';\r\n                html += '<span>' + cat.Name + '<\/span>';\r\n                html += '<span class=\"nav-count\">' + count + '<\/span>';\r\n                html += '<\/div>';\r\n                html += '<ul class=\"nav-subsections\">';\r\n\r\n                if (cat.Children && cat.Children.length > 0) {\r\n                    cat.Children.forEach(function (child, childIdx) {\r\n                        var subNumber = number + '.' + (childIdx + 1);\r\n                        var subCount = getFaqCount(child.Id);\r\n                        html += '<li>';\r\n                        html += '<a href=\"#sub-' + child.Id + '\" data-id=\"' + child.Id + '\">';\r\n                        html += subNumber + ' ' + child.Name;\r\n                        if (subCount > 0) {\r\n                            html += ' <span style=\"font-size:11px;color:#999;\">(' + subCount + ')<\/span>';\r\n                        }\r\n                        html += '<\/a>';\r\n                        html += '<\/li>';\r\n                    });\r\n                } else {\r\n                    html += '<li style=\"padding:4px 10px;color:#bbb;font-size:12px;\">\u6682\u65e0\u5b50\u5206\u7c7b<\/li>';\r\n                }\r\n\r\n                html += '<\/ul>';\r\n                html += '<\/div>';\r\n            });\r\n\r\n            navContainer.innerHTML = html;\r\n\r\n            var titles = navContainer.querySelectorAll('.nav-section-title');\r\n            titles.forEach(function (title) {\r\n                title.addEventListener('click', function (e) {\r\n                    var section = this.closest('.nav-section');\r\n                    if (section) {\r\n                        section.classList.toggle('open');\r\n                    }\r\n                });\r\n            });\r\n        }\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u7ed1\u5b9a\u5bfc\u822a\u70b9\u51fb\u4e8b\u4ef6\r\n        \/\/ ============================================================\r\n\r\n        function bindNavClicks() {\r\n            var links = navContainer.querySelectorAll('.nav-subsections a');\r\n            links.forEach(function (link) {\r\n                link.addEventListener('click', function (e) {\r\n                    e.preventDefault();\r\n                    var href = this.getAttribute('href');\r\n                    var subId = href.replace('#sub-', '');\r\n                    scrollToSub(subId);\r\n\r\n                    if (window.innerWidth <= 1024) {\r\n                        closeSidebar();\r\n                    }\r\n\r\n                    links.forEach(function (l) { l.classList.remove('active'); });\r\n                    this.classList.add('active');\r\n                });\r\n            });\r\n        }\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u6e32\u67d3\uff1a\u5185\u5bb9\u533a\r\n        \/\/ ============================================================\r\n\r\n        function renderContent(filterKeyword) {\r\n            if (!faqContent) return;\r\n\r\n            if (categoryTree.length === 0) {\r\n                faqContent.innerHTML =\r\n                    '<div style=\"padding:60px 20px;text-align:center;color:#999;\"><p>\u6682\u65e0\u5206\u7c7b\u6570\u636e\uff0c\u8bf7\u68c0\u67e5API\u63a5\u53e3\u662f\u5426\u6b63\u5e38<\/p><\/div>';\r\n                return;\r\n            }\r\n\r\n            var html = '';\r\n            var hasAnyResult = false;\r\n\r\n            categoryTree.forEach(function (cat, idx) {\r\n                var number = '2.' + (idx + 1);\r\n                var desc = cat.Introduction || cat.Description || '';\r\n                var colorClass = COLOR_CLASSES[idx % COLOR_CLASSES.length];\r\n                var hasChildren = cat.Children && cat.Children.length > 0;\r\n\r\n                var hasMatch = false;\r\n                var subSectionsHtml = '';\r\n\r\n                if (hasChildren) {\r\n                    cat.Children.forEach(function (child, childIdx) {\r\n                        var subNumber = number + '.' + (childIdx + 1);\r\n                        var faqs = getFaqsForCategory(child.Id, filterKeyword);\r\n\r\n                        if (filterKeyword && faqs.length === 0) {\r\n                            return;\r\n                        }\r\n\r\n                        hasMatch = true;\r\n                        hasAnyResult = true;\r\n\r\n                        subSectionsHtml += '<div class=\"subsection\" id=\"sub-' + child.Id + '\">';\r\n                        subSectionsHtml += '<h3 class=\"subsection-title\">' + subNumber + ' ' + child.Name +\r\n                            '<\/h3>';\r\n\r\n                        if (faqs.length === 0) {\r\n                            subSectionsHtml += '<div class=\"empty-faq-tip\">\u6682\u65e0FAQ\u6570\u636e<\/div>';\r\n                        } else {\r\n                            faqs.forEach(function (faq) {\r\n                                var highlight = filterKeyword && isFaqMatch(faq, filterKeyword) ?\r\n                                    ' highlight' : '';\r\n                                var open = filterKeyword && isFaqMatch(faq, filterKeyword) ?\r\n                                    ' open' : '';\r\n                                subSectionsHtml += '<details class=\"faq-item' + highlight + '\"' + open +\r\n                                    '>';\r\n                                subSectionsHtml += '<summary class=\"faq-question\">';\r\n                                subSectionsHtml += '<span class=\"faq-q-text\">' + escapeHtml(faq\r\n                                    .Question) + '<\/span>';\r\n                                subSectionsHtml += '<\/summary>';\r\n                                subSectionsHtml += '<div class=\"faq-answer\">';\r\n                                subSectionsHtml += '<div class=\"faq-answer-content\">';\r\n                                subSectionsHtml += '<div class=\"ans-badge\">A<\/div>';\r\n                                subSectionsHtml += '<div class=\"ans-text\">' + faq.Answer + '<\/div>';\r\n                                subSectionsHtml += '<\/div>';\r\n                                subSectionsHtml += '<\/div>';\r\n                                subSectionsHtml += '<\/details>';\r\n                            });\r\n                        }\r\n\r\n                        subSectionsHtml += '<\/div>';\r\n                    });\r\n                } else {\r\n                    var faqs = getFaqsForCategory(cat.Id, filterKeyword);\r\n                    if (filterKeyword && faqs.length === 0) {\r\n                        return;\r\n                    }\r\n                    hasMatch = true;\r\n                    hasAnyResult = true;\r\n\r\n                    subSectionsHtml += '<div class=\"subsection\" id=\"sub-' + cat.Id + '\">';\r\n                    if (faqs.length === 0) {\r\n                        subSectionsHtml += '<div class=\"empty-faq-tip\">\u6682\u65e0FAQ\u6570\u636e<\/div>';\r\n                    } else {\r\n                        faqs.forEach(function (faq) {\r\n                            var highlight = filterKeyword && isFaqMatch(faq, filterKeyword) ?\r\n                                ' highlight' : '';\r\n                            var open = filterKeyword && isFaqMatch(faq, filterKeyword) ?\r\n                                ' open' : '';\r\n                            subSectionsHtml += '<details class=\"faq-item' + highlight + '\"' + open +\r\n                                '>';\r\n                            subSectionsHtml += '<summary class=\"faq-question\">';\r\n                            subSectionsHtml += '<span class=\"faq-q-text\">' + escapeHtml(faq.Question) +\r\n                                '<\/span>';\r\n                            subSectionsHtml += '<\/summary>';\r\n                            subSectionsHtml += '<div class=\"faq-answer\">';\r\n                            subSectionsHtml += '<div class=\"faq-answer-content\">';\r\n                            subSectionsHtml += '<div class=\"ans-badge\">A<\/div>';\r\n                            subSectionsHtml += '<div class=\"ans-text\">' + faq.Answer + '<\/div>';\r\n                            subSectionsHtml += '<\/div>';\r\n                            subSectionsHtml += '<\/div>';\r\n                            subSectionsHtml += '<\/details>';\r\n                        });\r\n                    }\r\n                    subSectionsHtml += '<\/div>';\r\n                }\r\n\r\n                if (filterKeyword && !hasMatch) {\r\n                    return;\r\n                }\r\n\r\n                html += '<section class=\"section ' + colorClass + '\" id=\"sec-' + cat.Id + '\">';\r\n                html += '<div class=\"section-header\">';\r\n                html += '<span class=\"section-badge\">' + number + '<\/span>';\r\n                html += '<h2 class=\"section-title\">' + cat.Name + '<\/h2>';\r\n                html += '<span class=\"section-desc\">' + desc + '<\/span>';\r\n                html += '<\/div>';\r\n                html += subSectionsHtml;\r\n                html += '<\/section>';\r\n            });\r\n\r\n            faqContent.innerHTML = html;\r\n\r\n            updateSearchCount(filterKeyword);\r\n\r\n            if (filterKeyword && !hasAnyResult) {\r\n                noResults.style.display = 'block';\r\n            } else {\r\n                noResults.style.display = 'none';\r\n            }\r\n\r\n            highlightCurrentNav();\r\n        }\r\n\r\n        function getFaqsForCategory(categoryId, keyword) {\r\n            var faqs = allFaqs.filter(function (f) {\r\n                return f.CategoryId === categoryId;\r\n            });\r\n            if (keyword) {\r\n                var kw = keyword.toLowerCase().trim();\r\n                faqs = faqs.filter(function (f) {\r\n                    return (f.Question || '').toLowerCase().indexOf(kw) !== -1 ||\r\n                        (f.Answer || '').toLowerCase().indexOf(kw) !== -1;\r\n                });\r\n            }\r\n            faqs.sort(function (a, b) { return (a.SortOrder || 0) - (b.SortOrder || 0); });\r\n            return faqs;\r\n        }\r\n\r\n        function getAllFaqsCount(keyword) {\r\n            if (!keyword) return allFaqs.length;\r\n            var kw = keyword.toLowerCase().trim();\r\n            return allFaqs.filter(function (f) {\r\n                return (f.Question || '').toLowerCase().indexOf(kw) !== -1 ||\r\n                    (f.Answer || '').toLowerCase().indexOf(kw) !== -1;\r\n            }).length;\r\n        }\r\n\r\n        function isFaqMatch(faq, keyword) {\r\n            if (!keyword) return false;\r\n            var kw = keyword.toLowerCase().trim();\r\n            return (faq.Question || '').toLowerCase().indexOf(kw) !== -1 ||\r\n                (faq.Answer || '').toLowerCase().indexOf(kw) !== -1;\r\n        }\r\n\r\n        function updateSearchCount(keyword) {\r\n            if (!keyword) {\r\n                searchCount.style.display = 'none';\r\n                return;\r\n            }\r\n            var count = getAllFaqsCount(keyword);\r\n            if (count === 0) {\r\n                searchCount.style.display = 'none';\r\n            } else {\r\n                searchCount.style.display = 'block';\r\n                searchCount.textContent = count + '\u6761\u7ed3\u679c';\r\n            }\r\n        }\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u9ad8\u4eae\u5f53\u524d\u5bfc\u822a\r\n        \/\/ ============================================================\r\n\r\n        function highlightCurrentNav() {\r\n            var hash = window.location.hash;\r\n            if (hash) {\r\n                var links = navContainer.querySelectorAll('.nav-subsections a');\r\n                links.forEach(function (l) {\r\n                    l.classList.remove('active');\r\n                    if (l.getAttribute('href') === hash) {\r\n                        l.classList.add('active');\r\n                        var section = l.closest('.nav-section');\r\n                        if (section) section.classList.add('open');\r\n                    }\r\n                });\r\n            }\r\n        }\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u641c\u7d22\u529f\u80fd\r\n        \/\/ ============================================================\r\n\r\n        function bindSearch() {\r\n            if (!searchInput) return;\r\n\r\n            var timer;\r\n            searchInput.addEventListener('input', function () {\r\n                clearTimeout(timer);\r\n                var val = this.value;\r\n                timer = setTimeout(function () {\r\n                    renderContent(val);\r\n                    if (val) {\r\n                        document.querySelectorAll('.nav-section').forEach(function (sec) {\r\n                            sec.classList.add('open');\r\n                        });\r\n                    }\r\n                }, 300);\r\n            });\r\n        }\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u6eda\u52a8\u5230\u6307\u5b9a\u5b50\u5206\u7c7b\r\n        \/\/ ============================================================\r\n\r\n        var NAV_HEIGHT = 150;\r\n\r\n        function scrollToSub(subId) {\r\n            var target = document.getElementById('sub-' + subId);\r\n            if (!target) {\r\n                return;\r\n            }\r\n\r\n            var rect = target.getBoundingClientRect();\r\n            var targetPosition = rect.top + window.pageYOffset - NAV_HEIGHT;\r\n            window.scrollTo({ top: targetPosition, behavior: 'smooth' });\r\n\r\n            history.pushState(null, null, '#sub-' + subId);\r\n\r\n            var links = navContainer.querySelectorAll('.nav-subsections a');\r\n            links.forEach(function (l) {\r\n                l.classList.remove('active');\r\n                if (l.getAttribute('href') === '#sub-' + subId) {\r\n                    l.classList.add('active');\r\n                    var section = l.closest('.nav-section');\r\n                    if (section) section.classList.add('open');\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u4fa7\u8fb9\u680f\u5207\u6362\uff08\u79fb\u52a8\u7aef\uff09\r\n        \/\/ ============================================================\r\n\r\n        function toggleSidebar() {\r\n            sidebar.classList.toggle('show');\r\n            sidebarOverlay.classList.toggle('show');\r\n        }\r\n\r\n        function closeSidebar() {\r\n            sidebar.classList.remove('show');\r\n            sidebarOverlay.classList.remove('show');\r\n        }\r\n\r\n        if (menuToggle) {\r\n            menuToggle.addEventListener('click', toggleSidebar);\r\n        }\r\n        if (sidebarOverlay) {\r\n            sidebarOverlay.addEventListener('click', closeSidebar);\r\n        }\r\n\r\n        document.addEventListener('click', function (e) {\r\n            var link = e.target.closest('.nav-subsections a');\r\n            if (link && window.innerWidth <= 1024) {\r\n                closeSidebar();\r\n            }\r\n        });\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u5de5\u5177\u51fd\u6570\r\n        \/\/ ============================================================\r\n\r\n        function escapeHtml(text) {\r\n            if (!text) return '';\r\n            var div = document.createElement('div');\r\n            div.textContent = text;\r\n            return div.innerHTML;\r\n        }\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u76d1\u542c hash \u53d8\u5316\r\n        \/\/ ============================================================\r\n\r\n        window.addEventListener('hashchange', function () {\r\n            var hash = window.location.hash;\r\n            if (hash) {\r\n                var subId = hash.replace('#sub-', '');\r\n                if (subId) {\r\n                    scrollToSub(subId);\r\n                }\r\n            }\r\n        });\r\n\r\n        \/\/ ============================================================\r\n        \/\/  \u542f\u52a8\r\n        \/\/ ============================================================\r\n\r\n        document.addEventListener('DOMContentLoaded', function () {\r\n            loadAllData();\r\n\r\n            setTimeout(function () {\r\n                if (window.location.hash) {\r\n                    var subId = window.location.hash.replace('#sub-', '');\r\n                    if (subId) {\r\n                        scrollToSub(subId);\r\n                    }\r\n                }\r\n            }, 1000);\r\n        });\r\n\r\n        window.refreshFAQ = loadAllData;\r\n    <\/script>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u52a0\u8f7dFAQ\u6570\u636e\u4e2d&#8230; \u827e\u5c14\u4f73\u51c0\u5316\u79d1\u6280\u96c6\u56e2\uff08\u5e7f\u4e1c\uff09\u6709\u9650\u516c\u53f8 \u5e38\u89c1\u95ee\u9898\u6743\u5a01\u89e3\u7b54 \u00b7 \u56fd\u5bb6\u7ea7\u4e13\u7cbe\u7279\u65b0\u300c\u5c0f\u5de8&hellip;&nbsp;<a href=\"https:\/\/www.ag-filter.com\/?page_id=9905\" class=\"\" rel=\"bookmark\">\u9605\u8bfb\u66f4\u591a &raquo;<span class=\"screen-reader-text\">\u5e38\u89c1\u95ee\u9898<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-templates\/template-pagebuilder-full-width.php","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","_links_to":"","_links_to_type":0},"_links":{"self":[{"href":"https:\/\/www.ag-filter.com\/index.php?rest_route=\/wp\/v2\/pages\/9905"}],"collection":[{"href":"https:\/\/www.ag-filter.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.ag-filter.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.ag-filter.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ag-filter.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=9905"}],"version-history":[{"count":73,"href":"https:\/\/www.ag-filter.com\/index.php?rest_route=\/wp\/v2\/pages\/9905\/revisions"}],"predecessor-version":[{"id":9994,"href":"https:\/\/www.ag-filter.com\/index.php?rest_route=\/wp\/v2\/pages\/9905\/revisions\/9994"}],"wp:attachment":[{"href":"https:\/\/www.ag-filter.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=9905"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}