{"id":2636,"date":"2025-06-23T04:39:37","date_gmt":"2025-06-23T04:39:37","guid":{"rendered":"https:\/\/hstc.treecare.co.kr\/?post_type=pest&#038;p=2636"},"modified":"2025-06-23T04:39:39","modified_gmt":"2025-06-23T04:39:39","slug":"%eb%95%8c%ec%a3%bd%eb%82%a9%ec%9e%91%ec%a7%84%eb%94%a7%eb%ac%bc","status":"publish","type":"pest","link":"https:\/\/hstc.treecare.co.kr\/?pest=%eb%95%8c%ec%a3%bd%eb%82%a9%ec%9e%91%ec%a7%84%eb%94%a7%eb%ac%bc","title":{"rendered":"\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"ko\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c \ub300\ud654\ud615 \uac00\uc774\ub4dc<\/title>\n    <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n    <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js\"><\/script>\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Noto+Sans+KR:wght@300;400;500;700&#038;display=swap\" rel=\"stylesheet\">\n    <!-- Chosen Palette: Styrax Green & Earth Tones -->\n    <!-- Application Structure Plan: The SPA for Styrax Flat Aphid is structured into five core sections: '\uac1c\uc694' (Overview), '\ud615\ud0dc' (Morphology), '\ud53c\ud574 \uc99d\uc0c1' (Damage Symptoms), '\uc0dd\ud65c\uc0ac' (Lifecycle), and '\ubc29\uc81c \ubc29\ubc95' (Control Methods). This logical flow supports comprehensive understanding from identification to management. '\ud615\ud0dc' and '\ud53c\ud574 \uc99d\uc0c1' sections use interactive elements (buttons) to highlight different pest forms and specific damage types (gall formation, color changes). '\uc0dd\ud65c\uc0ac' includes a flowchart to visualize its unique lifecycle involving host alternation. '\ubc29\uc81c \ubc29\ubc95' incorporates a Chart.js visualization to illustrate optimal control timings, primarily targeting nymphs in early summer. -->\n    <!-- Visualization & Content Choices: \n        1. Report Info: Pest Morphology (Fundatrix\/Wingless\/Winged Adult, Nymph) -> Goal: Inform & Identify -> Viz\/Method: Interactive image gallery with buttons for '\uac04\ubaa8', '\uc720\uc2dc\ucda9', '\ubb34\uc2dc\ucda9 \/ \uc57d\ucda9' -> Interaction: Clicking buttons updates image and descriptive text for each form, including size and distinctive waxy coating\/colors. -> Justification: The distinct forms, especially the fundatrix and winged morphs, and their waxy secretions are crucial for identification. -> Library: Vanilla JS.\n        2. Report Info: Damage Types (Gall formation - banana-shaped, Gall color change, Internal infestation) -> Goal: Inform & Diagnose -> Viz\/Method: Interactive image gallery with buttons for '\ud669\ub85d\uc0c9 \ubc8c\ub808\ud639', '\ud751\uac08\uc0c9 \ubc8c\ub808\ud639', '\ubc8c\ub808\ud639 \ub0b4\ubd80' -> Interaction: Clicking buttons updates image and descriptive text. Clearly shows the unique and highly diagnostic gall symptoms and their progression. -> Library: Vanilla JS.\n        3. Report Info: Lifecycle (Egg overwintering, Gall formation, Host alternation to grass, Return to Styrax) -> Goal: Organize & Show Change -> Viz\/Method: HTML\/CSS vertical flowchart -> Interaction: Static visual aid -> Justification: Visualizing the complex lifecycle involving primary and secondary hosts is essential for understanding pest biology and planning control measures. -> Library: HTML\/Tailwind.\n        4. Report Info: Chemical Control Timing (Targeting nymphs in late May to early June) -> Goal: Inform & Guide -> Viz\/Method: Bar Chart -> Interaction: Hover tooltips -> Justification: The chart clearly illustrates the primary window for chemical intervention, which targets the vulnerable nymph stages before galls fully mature, making the timing actionable. -> Library: Chart.js.\n    -->\n    <!-- CONFIRMATION: NO SVG graphics used. NO Mermaid JS used. -->\n    <style>\n        body {\n            font-family: 'Noto Sans KR', sans-serif;\n        }\n        .chart-container {\n            position: relative;\n            width: 100%;\n            max-width: 600px;\n            margin-left: auto;\n            margin-right: auto;\n            height: 300px;\n            max-height: 400px;\n        }\n        @media (min-width: 768px) {\n            .chart-container {\n                height: 350px;\n            }\n        }\n        .nav-btn {\n            transition: all 0.3s ease;\n        }\n        .nav-btn.active {\n            background-color: #5d421d; \/* stone-800 adjusted for brown tone *\/\n            color: #f7f3ed; \/* stone-50 adjusted *\/\n            font-weight: 700;\n        }\n        .content-section {\n            display: none;\n        }\n        .content-section.active {\n            display: block;\n        }\n        .stage-btn.active, .damage-btn.active {\n            background-color: #a16207; \/* amber-700 for more contrast *\/\n            color: white;\n            font-weight: 600;\n            transform: scale(1.05);\n        }\n    <\/style>\n<\/head>\n<body class=\"bg-gray-50 text-gray-800\">\n\n    <div class=\"container mx-auto p-4 md:p-8\">\n        \n        <header class=\"text-center mb-8\">\n            <!-- \ubcd1\ud574\ucda9\uba85\uacfc \ud559\uba85 \uc81c\uac70\ub428 -->\n        <\/header>\n\n        <nav class=\"flex justify-center bg-gray-200 rounded-lg p-2 mb-8 shadow-sm\">\n            <button data-tab=\"overview\" class=\"nav-btn active flex-1 md:flex-none text-center py-2 px-4 rounded-md text-gray-700 hover:bg-stone-300\">\uac1c\uc694<\/button>\n            <button data-tab=\"morphology\" class=\"nav-btn flex-1 md:flex-none text-center py-2 px-4 rounded-md text-gray-700 hover:bg-stone-300\">\ud615\ud0dc<\/button>\n            <button data-tab=\"damage\" class=\"nav-btn flex-1 md:flex-none text-center py-2 px-4 rounded-md text-gray-700 hover:bg-stone-300\">\ud53c\ud574 \uc99d\uc0c1<\/button>\n            <button data-tab=\"ecology\" class=\"nav-btn flex-1 md:flex-none text-center py-2 px-4 rounded-md text-gray-700 hover:bg-stone-300\">\uc0dd\ud65c\uc0ac<\/button>\n            <button data-tab=\"control\" class=\"nav-btn flex-1 md:flex-none text-center py-2 px-4 rounded-md text-gray-700 hover:bg-stone-300\">\ubc29\uc81c \ubc29\ubc95<\/button>\n        <\/nav>\n\n        <main id=\"app-content\">\n            \n            <!-- \uac1c\uc694 Section -->\n            <section id=\"overview\" class=\"content-section active space-y-6\">\n                <div class=\"p-6 bg-white rounded-lg shadow\">\n                    <h2 class=\"text-2xl font-bold text-stone-800 mb-4\">\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c (<i>Ceratovacuna nekoashi<\/i>)\uc774\ub780?<\/h2>\n                    <p class=\"text-gray-700 leading-relaxed\">\n                        \ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c\uc740 \ub54c\uc8fd\ub098\ubb34, \ucabd\ub3d9\ubc31\ub098\ubb34\uc5d0 \uae30\uc0dd\ud558\ub294 \uc9c4\ub527\ubb3c\ub958 \ud574\ucda9\uc785\ub2c8\ub2e4. \uc5b4\ub9b0 \uac00\uc9c0\uc758 \ub05d\uc5d0 **\ubc14\ub098\ub098 \ubaa8\uc591\uc758 \ubc8c\ub808\ud639**\uc744 \ud615\uc131\ud558\ub294 \uac83\uc774 \ud2b9\uc9d5\uc774\uba70, \ubc8c\ub808\ud639\uc740 \uc2dc\uac04\uc774 \uc9c0\ub098\uba74\uc11c \ud669\ub85d\uc0c9\uc5d0\uc11c \uac08\uc0c9~\ud751\uac08\uc0c9\uc73c\ub85c \ubcc0\ud569\ub2c8\ub2e4. \ubc8c\ub808\ud639 \ub0b4\ubd80\uc5d0\ub294 \ubb34\uc2dc\ucda9(\ub0a0\uac1c \uc5c6\ub294 \uc9c4\ub527\ubb3c)\uacfc \ubc00\ub78d\ubb3c\uc9c8\uc774 \uac00\ub4dd\ud569\ub2c8\ub2e4.\n                    <\/p>\n                    <ul class=\"list-disc list-inside text-gray-700 mt-4 space-y-1\">\n                        <li><strong>\uc6d4\ub3d9\ud0dc:<\/strong> \uc54c (\u203b \uc790\uc138\ud55c \uc0dd\ud0dc \ubc1d\ud600\uc9c0\uc9c0 \uc54a\uc74c)<\/li>\n                        <li><strong>\ubc1c\uc0dd \ud69f\uc218:<\/strong> (\uc815\ubcf4 \uc5c6\uc74c)<\/li>\n                    <\/ul>\n                <\/div>\n                <div class=\"p-6 bg-white rounded-lg shadow\">\n                    <h3 class=\"text-xl font-semibold text-stone-800 mb-3\">\ubd84\ud3ec \ubc0f \uc8fc\uc694 \uac00\ud574 \uc218\ubaa9<\/h3>\n                    <p class=\"text-gray-700 mb-4\">\n                        \uc8fc\uc694 \uae30\uc8fc\uc2dd\ubb3c\uc740 <strong>\ub54c\uc8fd\ub098\ubb34, \ucabd\ub3d9\ubc31\ub098\ubb34<\/strong>\uc785\ub2c8\ub2e4.\n                    <\/p>\n                <\/div>\n            <\/section>\n\n            <!-- \ud615\ud0dc Section -->\n            <section id=\"morphology\" class=\"content-section space-y-6\">\n                <div class=\"p-6 bg-white rounded-lg shadow\">\n                    <h2 class=\"text-2xl font-bold text-stone-800 mb-4\">\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c\uc758 \ud615\ud0dc\uc801 \ud2b9\uc9d5<\/h2>\n                    <p class=\"text-gray-700 leading-relaxed mb-6\">\n                        \ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c\uc740 \uac04\ubaa8, \uc720\uc2dc\ucda9, \ubb34\uc2dc\ucda9, \uc57d\ucda9 \ub4f1 \ub2e4\uc591\ud55c \ud615\ud0dc\ub97c \uac00\uc9d1\ub2c8\ub2e4. \ud770\uc0c9 \ubc00\ub78d\ubb3c\uc9c8\ub85c \ub36e\uc5ec \uc788\ub294 \uac83\uc774 \ud2b9\uc9d5\uc785\ub2c8\ub2e4.\n                    <\/p>\n                    <div class=\"flex flex-wrap justify-center gap-2 md:gap-4 mb-6\">\n                        <button data-type=\"fundatrix\" class=\"stage-btn active text-sm md:text-base py-2 px-4 bg-gray-200 rounded-full font-semibold shadow-sm transition-transform duration-200\">\uac04\ubaa8 (Fundatrix)<\/button>\n                        <button data-type=\"winged_adult\" class=\"stage-btn text-sm md:text-base py-2 px-4 bg-gray-200 rounded-full font-semibold shadow-sm transition-transform duration-200\">\uc720\uc2dc\ucda9 (Winged Adult)<\/button>\n                        <button data-type=\"apterous_nymph\" class=\"stage-btn text-sm md:text-base py-2 px-4 bg-gray-200 rounded-full font-semibold shadow-sm transition-transform duration-200\">\ubb34\uc2dc\ucda9 \/ \uc57d\ucda9 (Apterous \/ Nymph)<\/button>\n                    <\/div>\n                    <div id=\"morphology-content\" class=\"md:flex md:items-center md:space-x-6 p-4 border border-gray-200 rounded-lg\">\n                        <img decoding=\"async\" id=\"morphology-main-image\" src=\"https:\/\/storage.googleapis.com\/aai-web-samples\/Ceratovacuna_nekoashi_fundatrix.jpg\" alt=\"\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c \uac04\ubaa8 \uc774\ubbf8\uc9c0\" class=\"w-full md:w-1\/2 rounded-lg shadow-md mb-4 md:mb-0\">\n                        <div id=\"morphology-text\" class=\"md:w-1\/2\">\n                            <h3 id=\"morphology-title\" class=\"text-xl font-semibold text-amber-700 mb-2\"><\/h3>\n                            <p id=\"morphology-description\" class=\"text-gray-700\"><\/p>\n                            <p id=\"morphology-size\" class=\"text-sm text-gray-600 mt-2\"><\/p>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- \ud53c\ud574 \uc99d\uc0c1 Section -->\n            <section id=\"damage\" class=\"content-section space-y-6\">\n                <div class=\"p-6 bg-white rounded-lg shadow\">\n                    <h2 class=\"text-2xl font-bold text-stone-800 mb-4\">\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c\uc758 \uc8fc\uc694 \ud53c\ud574 \uc99d\uc0c1<\/h2>\n                    <p class=\"text-gray-700 leading-relaxed mb-6\">\n                        \ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c\uc740 \uc5b4\ub9b0 \uac00\uc9c0 \ub05d\uc5d0 \ubc14\ub098\ub098 \ubaa8\uc591\uc758 \ubc8c\ub808\ud639\uc744 \ud615\uc131\ud558\uace0, \ubc8c\ub808\ud639\uc758 \uc0c9\uae54\uc774 \ubcc0\ud558\ub294 \uac83\uc774 \ud2b9\uc9d5\uc785\ub2c8\ub2e4.\n                    <\/p>\n                    <div class=\"flex flex-wrap justify-center gap-2 md:gap-4 mb-6\">\n                        <button data-damage-type=\"yellow_green_gall\" class=\"damage-btn active text-sm md:text-base py-2 px-4 bg-gray-200 rounded-full font-semibold shadow-sm transition-transform duration-200\">\ud669\ub85d\uc0c9 \ubc8c\ub808\ud639<\/button>\n                        <button data-damage-type=\"dark_brown_gall\" class=\"damage-btn text-sm md:text-base py-2 px-4 bg-gray-200 rounded-full font-semibold shadow-sm transition-transform duration-200\">\uac08\uc0c9~\ud751\uac08\uc0c9 \ubc8c\ub808\ud639<\/button>\n                        <button data-damage-type=\"gall_interior\" class=\"damage-btn text-sm md:text-base py-2 px-4 bg-gray-200 rounded-full font-semibold shadow-sm transition-transform duration-200\">\ubc8c\ub808\ud639 \ub0b4\ubd80<\/button>\n                    <\/div>\n                    <div id=\"damage-content\" class=\"md:flex md:items-center md:space-x-6 p-4 border border-gray-200 rounded-lg\">\n                        <img decoding=\"async\" id=\"damage-main-image\" src=\"https:\/\/storage.googleapis.com\/aai-web-samples\/Ceratovacuna_nekoashi_yellow_gall.jpg\" alt=\"\ud669\ub85d\uc0c9 \ubc8c\ub808\ud639 \uc774\ubbf8\uc9c0\" class=\"w-full md:w-1\/2 rounded-lg shadow-md mb-4 md:mb-0\">\n                        <div id=\"damage-text\" class=\"md:w-1\/2\">\n                            <h3 id=\"damage-title\" class=\"text-xl font-semibold text-amber-700 mb-2\"><\/h3>\n                            <p id=\"damage-description\" class=\"text-gray-700\"><\/p>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- \uc0dd\ud65c\uc0ac Section -->\n            <section id=\"ecology\" class=\"content-section space-y-6\">\n                 <div class=\"p-6 bg-white rounded-lg shadow\">\n                    <h2 class=\"text-2xl font-bold text-stone-800 mb-4\">\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c\uc758 \uc0dd\ud65c\uc0ac<\/h2>\n                     <p class=\"text-gray-700 leading-relaxed mb-6\">\n                        \ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c\uc758 \uc790\uc138\ud55c \uc0dd\ud0dc\ub294 \uc544\uc9c1 \ubc1d\ud600\uc9c0\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4. \ud558\uc9c0\ub9cc \ubc8c\ub808\ud639 \ud615\uc131 \uc2dc\uae30\uc640 \uc720\uc2dc\ucda9\uc758 \uc774\ub3d9 \ud328\ud134\uc740 \ud655\uc778\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \n                    <\/p>\n                     <div class=\"flex flex-col items-center space-y-2\">\n                        <div class=\"w-full max-w-md text-center p-3 bg-blue-100 rounded-lg\">\n                            <p class=\"font-semibold\">1. \uc6d4\ub3d9 (\uc54c)<\/p><p class=\"text-sm\">\uc54c \uc0c1\ud0dc\ub85c \uaca8\uc6b8\uc744 \ubcf4\ub0c4<\/p>\n                        <\/div>\n                        <div class=\"text-2xl text-gray-400\">\u2193<\/div>\n                        <div class=\"w-full max-w-md text-center p-3 bg-green-100 rounded-lg\">\n                            <p class=\"font-semibold\">2. \ubc8c\ub808\ud639 \ud615\uc131 \uc2dc\uc791 (6\uc6d4 \uc0c1\uc21c\ubd80\ud130)<\/p><p class=\"text-sm\">\uc5b4\ub9b0 \uac00\uc9c0 \ub05d\uc5d0 \ubc14\ub098\ub098 \ubaa8\uc591\uc758 \ubc8c\ub808\ud639 \ud615\uc131<\/p>\n                        <\/div>\n                        <div class=\"text-2xl text-gray-400\">\u2193<\/div>\n                        <div class=\"w-full max-w-md text-center p-3 bg-yellow-100 rounded-lg\">\n                            <p class=\"font-semibold\">3. \uc720\uc2dc\ucda9 \ud0c8\ucd9c \ubc0f \uc5ec\ub984\uae30\uc8fc \uc774\ub3d9 (7\uc6d4 \ud558\uc21c)<\/p><p class=\"text-sm\">\ubc8c\ub808\ud639 \ub05d\uc758 \uad6c\uba4d\uc73c\ub85c \uc720\uc2dc\ucda9\uc774 \ud0c8\ucd9c\ud558\uc5ec \uc5ec\ub984\uae30\uc8fc\uc778 \ub098\ub3c4\ubc14\ub7ad\uc774\ub85c \uc774\ub3d9<\/p>\n                        <\/div>\n                         <div class=\"text-2xl text-gray-400\">\u2193<\/div>\n                         <div class=\"w-full max-w-md text-center p-3 bg-orange-100 rounded-lg\">\n                            <p class=\"font-semibold\">4. \uac00\uc744\ucca0 \ub54c\uc8fd\ub098\ubb34 \ubcf5\uadc0<\/p><p class=\"text-sm\">\uac00\uc744\uc5d0 \ub2e4\uc2dc \ub54c\uc8fd\ub098\ubb34\ub85c \ub3cc\uc544\uc634 (\ucd94\uc815)<\/p>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- \ubc29\uc81c \ubc29\ubc95 Section -->\n            <section id=\"control\" class=\"content-section space-y-6\">\n                <div class=\"p-6 bg-white rounded-lg shadow\">\n                    <h2 class=\"text-2xl font-bold text-stone-800 mb-4\">\ud6a8\uacfc\uc801\uc778 \ubc29\uc81c \ubc29\ubc95<\/h2>\n                    <p class=\"text-gray-700 leading-relaxed mb-6\">\n                        \ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c\uc740 \ubc8c\ub808\ud639 \ud615\uc131 \ucd08\uae30\uc5d0 \uc57d\uc81c\ub97c \uc0b4\ud3ec\ud558\ub294 \uac83\uc774 \uc911\uc694\ud569\ub2c8\ub2e4.\n                    <\/p>\n                    <div class=\"p-4 border border-blue-200 bg-blue-50 rounded-lg\">\n                         <h3 class=\"text-xl font-semibold text-blue-800 mb-2\">\ud654\ud559\uc801 \ubc29\uc81c<\/h3>\n                         <ul class=\"list-disc list-inside text-gray-700\">\n                             <li><strong>\uc0b4\ud3ec \uc2dc\uae30:<\/strong> \ubc8c\ub808\ud639\uc774 \ud615\uc131\ub418\uae30 \uc2dc\uc791\ud558\ub294 \uc2dc\uc810\uc778 <strong>5\uc6d4 \ud558\uc21c ~ 6\uc6d4 \uc0c1\uc21c<\/strong>\uc5d0 \uc544\uc138\ud0c0\ubbf8\ud504\ub9ac\ub4dc \uc218\ud654\uc81c 2,000\ubc30\uc561 \ub610\ub294 \ub514\ub178\ud14c\ud4e8\ub780 \uc218\ud654\uc81c 1,000\ubc30\uc561\uc744 2~3\ud68c \uc0b4\ud3ec\ud569\ub2c8\ub2e4.<\/li>\n                             <li><strong>\uc815\ubcf4 \ud655\uc778:<\/strong> \ub18d\uc57d\uc548\uc804\uc815\ubcf4\uc2dc\uc2a4\ud15c(psis.rda.go.kr)\uc5d0\uc11c \ub54c\uc8fd\ub098\ubb34 \ubc0f \uc9c4\ub527\ubb3c\ub958\uc5d0 \ub4f1\ub85d\ub41c \uc57d\uc81c\ub97c \ud655\uc778\ud558\uc5ec \uc0ac\uc6a9\ud558\uc2ed\uc2dc\uc624.<\/li>\n                         <\/ul>\n                    <\/div>\n                <\/div>\n                <div class=\"p-6 bg-white rounded-lg shadow\">\n                    <h3 class=\"text-xl font-semibold text-stone-800 mb-4 text-center\">\uc8fc\uc694 \ud65c\ub3d9 \uc2dc\uae30 \ubc0f \ubc29\uc81c \uc801\uae30 (\ubc8c\ub808\ud639 \ud615\uc131 \ucd08\uae30)<\/h3>\n                    <div class=\"chart-container\">\n                        <canvas id=\"controlChart\"><\/canvas>\n                    <\/div>\n                <\/div>\n            <\/section>\n        <\/main>\n\n        <footer class=\"text-center mt-12 pt-4 border-t border-gray-200\">\n            <p class=\"text-sm text-gray-500\">\uc815\ubcf4 \ucd9c\ucc98: \ub098\ubb34 \ubcd1\ud574\ucda9 \ub3c4\uac10<\/p>\n        <\/footer>\n    <\/div>\n\n    <script>\n        document.addEventListener('DOMContentLoaded', () => {\n            const tabs = document.querySelectorAll('.nav-btn');\n            const sections = document.querySelectorAll('.content-section');\n\n            const morphologyData = {\n                fundatrix: {\n                    title: '\uac04\ubaa8 (Fundatrix)',\n                    description: '\ubab8\uae38\uc774\uac00 \uc57d 2.0mm\uc774\uba70 \ub2f4\ud669\uc0c9\uc774\uace0, \ud770\uc0c9 \ubc00\ub78d \ubb3c\uc9c8\ub85c \ub36e\uc5ec \uc788\uc2b5\ub2c8\ub2e4. \ubc8c\ub808\ud639 \ub0b4\ubd80\uc5d0 \uc11c\uc2dd\ud558\uba70 \ubb34\uc131\uc0dd\uc2dd\uc73c\ub85c \uc57d\ucda9\uc744 \ub0b3\uc2b5\ub2c8\ub2e4.',\n                    size: '\ud06c\uae30: \uc57d 2.0mm',\n                    image: 'https:\/\/storage.googleapis.com\/aai-web-samples\/Ceratovacuna_nekoashi_fundatrix.jpg'\n                },\n                winged_adult: {\n                    title: '\uc720\uc2dc\ucda9 (Winged Adult)',\n                    description: '\ubab8\uae38\uc774\uac00 \uc57d 1.9mm\ub85c \ud751\uac08\uc0c9\uc774\uba70 \ubc30\ub294 \ud64d\uc801\uc0c9\uc785\ub2c8\ub2e4. \ubc8c\ub808\ud639 \ub05d\uc758 \uad6c\uba4d\uc73c\ub85c \ud0c8\ucd9c\ud558\uc5ec \uc5ec\ub984\uae30\uc8fc\uc778 \ub098\ub3c4\ubc14\ub7ad\uc774\ub85c \uc774\ub3d9\ud558\ub294 \uc5ed\ud560\uc744 \ud569\ub2c8\ub2e4.',\n                    size: '\ud06c\uae30: \uc57d 1.9mm',\n                    image: 'https:\/\/storage.googleapis.com\/aai-web-samples\/Ceratovacuna_nekoashi_winged_adult.jpg'\n                },\n                apterous_nymph: {\n                    title: '\ubb34\uc2dc\ucda9 \/ \uc57d\ucda9 (Apterous \/ Nymph)',\n                    description: '\ubb34\uc2dc\ucda9\uc740 \ubab8\uae38\uc774\uac00 \uc57d 1.8mm\ub85c \ud669\uac08\uc0c9\uc774\uba70, \ud770\uc0c9 \ubc00\ub78d\ubb3c\uc9c8\ub85c \ub36e\uc5ec \uc788\uc2b5\ub2c8\ub2e4. \uc57d\ucda9\uc740 \ubc8c\ub808\ud639 \ub0b4\ubd80\uc5d0\uc11c \ubb34\uc2dc\ucda9\uacfc \ud568\uaed8 \ubc1c\uacac\ub418\uba70, \ubc00\ub78d\ubb3c\uc9c8\uc5d0 \ub36e\uc5ec \uc788\uc2b5\ub2c8\ub2e4.',\n                    size: '\ud06c\uae30: \ubb34\uc2dc\ucda9 \uc57d 1.8mm, \uc57d\ucda9 (\uc815\ubcf4 \uc5c6\uc74c)',\n                    image: 'https:\/\/storage.googleapis.com\/aai-web-samples\/Ceratovacuna_nekoashi_apterous_nymph.jpg' \n                }\n            };\n\n            const damageData = {\n                yellow_green_gall: {\n                    title: '\ud669\ub85d\uc0c9 \ubc8c\ub808\ud639',\n                    description: '\uc5b4\ub9b0 \uac00\uc9c0\uc758 \ub05d\uc5d0 \ubc14\ub098\ub098 \ubaa8\uc591\uc758 \ubc8c\ub808\ud639\uc774 \ud615\uc131\ub418\uae30 \uc2dc\uc791\ud569\ub2c8\ub2e4. \ucc98\uc74c\uc5d0\ub294 \uc2e0\uc120\ud55c \ud669\ub85d\uc0c9\uc744 \ub760\uba70, \uc774 \uc2dc\uae30\uc5d0 \ubc8c\ub808\ud639 \ub0b4\ubd80\uc5d0\uc11c \uc9c4\ub527\ubb3c\uc774 \ud65c\ub3d9\ud569\ub2c8\ub2e4.',\n                    image: 'https:\/\/storage.googleapis.com\/aai-web-samples\/Ceratovacuna_nekoashi_yellow_gall.jpg' \n                },\n                dark_brown_gall: {\n                    title: '\uac08\uc0c9~\ud751\uac08\uc0c9 \ubc8c\ub808\ud639',\n                    description: '\ubc8c\ub808\ud639\uc740 \uc2dc\uac04\uc774 \uc9c0\ub098\uba74\uc11c \uc810\ucc28 \uac08\uc0c9\uc5d0\uc11c \ud751\uac08\uc0c9\uc73c\ub85c \ubcc0\ud569\ub2c8\ub2e4. 8\uc6d4 \uc774\ud6c4\uc5d0\ub294 \uc644\uc804\ud788 \uc5b4\ub450\uc6b4 \uc0c9\uc73c\ub85c \ubcc0\ud558\uc5ec \uc9c4\ub527\ubb3c\uc758 \uac00\ud574 \ud754\uc801\uc744 \ub69c\ub837\ud558\uac8c \ubcf4\uc5ec\uc90d\ub2c8\ub2e4.',\n                    image: 'https:\/\/storage.googleapis.com\/aai-web-samples\/Ceratovacuna_nekoashi_dark_gall.jpg' \n                },\n                gall_interior: {\n                    title: '\ubc8c\ub808\ud639 \ub0b4\ubd80',\n                    description: '\ubc8c\ub808\ud639\uc744 \uc5f4\uc5b4\ubcf4\uba74 \ub0b4\ubd80\uc5d0 \ubb34\uc2dc\ucda9\uacfc \uc57d\ucda9\ub4e4\uc774 \ud770\uc0c9 \ubc00\ub78d\ubb3c\uc9c8\uc5d0 \ub4a4\ub36e\uc778 \ucc44 \uc9d1\ub2e8\uc73c\ub85c \uc11c\uc2dd\ud558\uace0 \uc788\ub294 \uac83\uc744 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub4e4\uc774 \uc218\uc561\uc744 \ud761\uc999\ud558\uba70 \ubc8c\ub808\ud639\uc774 \ucee4\uc9d1\ub2c8\ub2e4.',\n                    image: 'https:\/\/storage.googleapis.com\/aai-web-samples\/Ceratovacuna_nekoashi_gall_interior.jpg' \n                }\n            };\n            \n            const setupImageFallback = (imgElement) => {\n                if (!imgElement) return;\n                imgElement.onerror = () => {\n                    const altText = imgElement.alt || '\uc774\ubbf8\uc9c0 \ub85c\ub529 \uc2e4\ud328';\n                    const placeholderUrl = `https:\/\/placehold.co\/400x300\/e2e8f0\/4a5568?text=${encodeURIComponent(altText)}`;\n                    imgElement.src = placeholderUrl;\n                    imgElement.onerror = null;\n                };\n            };\n            \n            setupImageFallback(document.getElementById('morphology-main-image'));\n            setupImageFallback(document.getElementById('damage-main-image'));\n\n            tabs.forEach(tab => {\n                tab.addEventListener('click', () => {\n                    tabs.forEach(t => t.classList.remove('active'));\n                    tab.classList.add('active');\n                    sections.forEach(section => {\n                        section.classList.remove('active');\n                        if (section.id === tab.dataset.tab) {\n                            section.classList.add('active');\n                        }\n                    });\n                });\n            });\n\n            \/\/ Morphology section logic\n            const morphologyTypeButtons = document.querySelectorAll('#morphology .stage-btn');\n            const morphologyTitle = document.getElementById('morphology-title');\n            const morphologyDescription = document.getElementById('morphology-description');\n            const morphologySize = document.getElementById('morphology-size');\n            const morphologyMainImage = document.getElementById('morphology-main-image');\n\n            function updateMorphologyContent(type) {\n                morphologyTypeButtons.forEach(btn => btn.classList.remove('active'));\n                document.querySelector(`#morphology .stage-btn[data-type=\"${type}\"]`).classList.add('active');\n                \n                const data = morphologyData[type];\n                morphologyTitle.textContent = data.title;\n                morphologyDescription.textContent = data.description;\n                morphologySize.textContent = data.size;\n                morphologyMainImage.src = data.image;\n                morphologyMainImage.alt = `${data.title} \uc774\ubbf8\uc9c0`;\n            }\n\n            morphologyTypeButtons.forEach(button => {\n                button.addEventListener('click', () => {\n                    updateMorphologyContent(button.dataset.type);\n                });\n            });\n            updateMorphologyContent('fundatrix'); \/\/ Initial content for morphology section\n\n            \/\/ Damage section logic\n            const damageTypeButtons = document.querySelectorAll('#damage .damage-btn');\n            const damageTitle = document.getElementById('damage-title');\n            const damageDescription = document.getElementById('damage-description');\n            const damageMainImage = document.getElementById('damage-main-image');\n\n            function updateDamageContent(type) {\n                damageTypeButtons.forEach(btn => btn.classList.remove('active'));\n                document.querySelector(`#damage .damage-btn[data-damage-type=\"${type}\"]`).classList.add('active');\n                \n                const data = damageData[type];\n                damageTitle.textContent = data.title;\n                damageDescription.textContent = data.description;\n                damageMainImage.src = data.image;\n                damageMainImage.alt = data.title;\n            }\n\n            damageTypeButtons.forEach(button => {\n                button.addEventListener('click', () => {\n                    updateDamageContent(button.dataset.damageType);\n                });\n            });\n            updateDamageContent('yellow_green_gall'); \/\/ Initial content for damage section\n\n            const ctx = document.getElementById('controlChart').getContext('2d');\n            new Chart(ctx, {\n                type: 'bar',\n                data: {\n                    labels: ['4\uc6d4', '5\uc6d4', '6\uc6d4', '7\uc6d4', '8\uc6d4', '9\uc6d4', '10\uc6d4', '11\uc6d4'],\n                    datasets: [{\n                        label: '\ubc8c\ub808\ud639 \ud615\uc131 \ubc0f \uc720\uc2dc\ucda9 \ud65c\ub3d9',\n                        data: [0, 5, 10, 8, 5, 2, 0, 0], \/\/ Peak June-July (gall formation starts in June, winged adults escape late July)\n                        backgroundColor: 'rgba(161, 98, 7, 0.6)', \/* amber-700 *\/\n                        borderColor: 'rgba(161, 98, 7, 1)',\n                        borderWidth: 1,\n                        yAxisID: 'y',\n                    },{\n                        label: '\ubc29\uc81c \ucd94\ucc9c \uae30\uac04 (\ubc8c\ub808\ud639 \ud615\uc131 \ucd08\uae30)',\n                        data: [0, 0, 12, 0, 0, 0, 0, 0], \/\/ Late May - Early June\n                        type: 'line',\n                        fill: true,\n                        backgroundColor: 'rgba(59, 130, 246, 0.2)', \/* blue-500 with transparency *\/\n                        borderColor: 'rgba(59, 130, 246, 1)',\n                        pointRadius: 0,\n                        yAxisID: 'y1'\n                    }]\n                },\n                options: {\n                    responsive: true,\n                    maintainAspectRatio: false,\n                    plugins: {\n                        legend: {\n                           display: true,\n                           position: 'top',\n                           labels: {\n                               usePointStyle: false,\n                           }\n                        },\n                        tooltip: {\n                           mode: 'index',\n                           intersect: false,\n                           callbacks: {\n                                label: function(context) {\n                                    if (context.dataset.label.includes('\ubc29\uc81c \ucd94\ucc9c \uae30\uac04')) {\n                                        return ` ${context.dataset.label}: 5\uc6d4 \ud558\uc21c ~ 6\uc6d4 \uc0c1\uc21c`;\n                                    }\n                                    return ` ${context.dataset.label}: ${context.raw} (\ud65c\ub3d9 \ubc00\ub3c4)`;\n                                }\n                           }\n                        },\n                        title: {\n                            display: true,\n                            text: '\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c \uc6d4\ubcc4 \ud65c\ub3d9 \ubc0f \ubc29\uc81c \uc2dc\uae30'\n                        }\n                    },\n                    scales: {\n                        x: {\n                            stacked: true,\n                        },\n                        y: {\n                           stacked: true,\n                           display: true,\n                           title: {\n                               display: true,\n                               text: '\ud65c\ub3d9 \ubc00\ub3c4'\n                           },\n                           max: 12\n                        },\n                        y1: {\n                           display: false,\n                           max: 15\n                        }\n                    }\n                }\n            });\n        });\n    <\/script>\n<\/body>\n<\/html>\n\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"featured_media":2631,"template":"","meta":{"_acf_changed":true,"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}}},"pest-target":[128,199],"pest-category":[200,94,78],"pest-overwintering":[82],"class_list":["post-2636","pest","type-pest","status-publish","has-post-thumbnail","hentry","pest-target-128","pest-target-199","pest-category-200","pest-category-94","pest-category-78","pest-overwintering-egg"],"acf":[],"uagb_featured_image_src":{"full":["https:\/\/hstc.treecare.co.kr\/wp-content\/uploads\/2025\/06\/\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c.jpg",621,529,false],"thumbnail":["https:\/\/hstc.treecare.co.kr\/wp-content\/uploads\/2025\/06\/\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c-150x150.jpg",150,150,true],"medium":["https:\/\/hstc.treecare.co.kr\/wp-content\/uploads\/2025\/06\/\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c-300x256.jpg",300,256,true],"medium_large":["https:\/\/hstc.treecare.co.kr\/wp-content\/uploads\/2025\/06\/\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c.jpg",621,529,false],"large":["https:\/\/hstc.treecare.co.kr\/wp-content\/uploads\/2025\/06\/\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c.jpg",621,529,false],"1536x1536":["https:\/\/hstc.treecare.co.kr\/wp-content\/uploads\/2025\/06\/\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c.jpg",621,529,false],"2048x2048":["https:\/\/hstc.treecare.co.kr\/wp-content\/uploads\/2025\/06\/\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c.jpg",621,529,false]},"uagb_author_info":{"display_name":"darius","author_link":"https:\/\/hstc.treecare.co.kr\/?author=0"},"uagb_comment_info":0,"uagb_excerpt":"\ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c \ub300\ud654\ud615 \uac00\uc774\ub4dc \uac1c\uc694 \ud615\ud0dc \ud53c\ud574 \uc99d\uc0c1 \uc0dd\ud65c\uc0ac \ubc29\uc81c \ubc29\ubc95 \ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c (Ceratovacuna nekoashi)\uc774\ub780? \ub54c\uc8fd\ub0a9\uc791\uc9c4\ub527\ubb3c\uc740 \ub54c\uc8fd\ub098\ubb34, \ucabd\ub3d9\ubc31\ub098\ubb34\uc5d0 \uae30\uc0dd\ud558\ub294 \uc9c4\ub527\ubb3c\ub958 \ud574\ucda9\uc785\ub2c8\ub2e4. \uc5b4\ub9b0 [&hellip;]","_links":{"self":[{"href":"https:\/\/hstc.treecare.co.kr\/index.php?rest_route=\/wp\/v2\/pest\/2636","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hstc.treecare.co.kr\/index.php?rest_route=\/wp\/v2\/pest"}],"about":[{"href":"https:\/\/hstc.treecare.co.kr\/index.php?rest_route=\/wp\/v2\/types\/pest"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hstc.treecare.co.kr\/index.php?rest_route=\/wp\/v2\/media\/2631"}],"wp:attachment":[{"href":"https:\/\/hstc.treecare.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2636"}],"wp:term":[{"taxonomy":"pest-target","embeddable":true,"href":"https:\/\/hstc.treecare.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fpest-target&post=2636"},{"taxonomy":"pest-category","embeddable":true,"href":"https:\/\/hstc.treecare.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fpest-category&post=2636"},{"taxonomy":"pest-overwintering","embeddable":true,"href":"https:\/\/hstc.treecare.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fpest-overwintering&post=2636"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}