@charset "UTF-8";



* { box-sizing: border-box; }

/* ----- S : layout ----- */
body { font-weight: 500; font-size: 17px; }
#wrap, header, #header, #container, gnb, #gnb, main, #main, aside, #aside, footer, #footer { box-sizing: border-box; }

/* 스크롤바 */
.popup_body::-webkit-scrollbar, .scrollBar::-webkit-scrollbar { width: 4px; /* 스크롤바의 너비 */ height: 4px; z-index: 9999; }
.popup_body::-webkit-scrollbar-thumb, .scrollBar::-webkit-scrollbar-thumb { height: 25%; /* 스크롤바의 길이 */  background: #ddd; /* 스크롤바의 색상 */ border-radius: 8px; z-index: 9999; }
.contents.sub::-webkit-scrollbar-track, .scrollBar::-webkit-scrollbar-track { background: none; border-radius: 8px; z-index: 9999; }
.contents.sub::-webkit-scrollbar, .chat_body.scrollBar::-webkit-scrollbar { width: 6px; /* 스크롤바의 너비 */ height: 6px; }
.contents.sub::-webkit-scrollbar-thumb, .chat_body.scrollBar::-webkit-scrollbar-thumb { background: #898f92; }

/* button */
.btn { align-content: center; }
.btn.sm { border-radius: 5px; padding: 0 12px; height: 34px; font-size: 16px; }
.btn.mid { border-radius: 6px; padding: 0 15px; height: 38px; font-size: 17px; }
.btn.lg { padding: 0 26px; height: 50px; font-size: 18px; font-weight: 500; border-radius: 8px; }

.mcolor { background: #41a591; }
.mcolor:hover { background: #0f977c; }
.btn.mcolor { color: #fff; }

.scolor { background: #f09660; }
.scolor:hover { background: #ef894c; }
.btn.scolor.mid,
.btn.scolor { color: #fff; }

.bd_gcolor { border: 1px solid #93c9ba; background: #e1f7f1; color: #02936c; }
.bd_gcolor:hover { background: #cdf2e8; }
.bd_gcolor i { margin-right: 6px; color: #02936c; }
.bd_wcolor { background: #fff; border: 1px solid #d7d7d7; }
.bd_wcolor:hover { border: 1px solid #93c9ba; box-shadow: 0px 4px 10px rgba(36, 165, 158, 0.1); }
.bd_color { background: #fff; border: 1px solid #ccc; color: #777; }
.bd_color:hover { background: #fafafa; border: 1px solid #c3c3c3; }
.bd_ocolor { background: #ffebdf; border: 1px solid #ebc2a8; color: #d7722f; }
.bd_ocolor:hover { background: #fce3d3; }
.bd_ocolor i { margin-right: 6px; color: #de9351; }
.bd_rcolor { background: #fff; border: 1px solid #e2bfbf; color: #c97979; }
.bd_rcolor:hover { background: #fef5f5; border: 1px solid #e2bfbf; }

.bd_btn { background: #fff; border: 1px solid #c4c4c4; }
.bd_btn:hover { border: 1px solid #93c9ba; box-shadow: 0px 3px 9px rgba(36, 165, 158, 0.08); }
.bd_btn:hover i img { filter: invert(30%) sepia(50%) saturate(500%) hue-rotate(110deg) brightness(85%) contrast(95%); }
.bd_btn.btn:hover { color: #02936c; }

.btn.grey { background: #acacac; color: #fff; }
.btn.grey:hover { background: #9c9c9c; }
.btn.red { background: #dc7c7c; color: #fff; }
.btn.red:hover { background: #d06565; }
.btn.black { background: #777; color: #fff; }
.btn.black:hover { background: #555; }



/* table */
.tbl_box { max-width: 762px; overflow-x: auto; }
.tbl_box table { width: 100%; }
.tbl01 { width: 100%; text-align: center; }
.tbl01 li { display: flex; align-items: center; }
.titbox { background: #f3f8f9; border-radius: 6px; }
.thead_row { display: flex; padding: 13px 0; text-align: center; }
.thead_row span { display: block; color: #555; font-weight: 500; font-size: 18px; }

.tbl01 .tbody_row { height: 58px; padding: 14px 0; cursor: pointer; border-bottom: 1px solid #ddd; }
.tbl01 .tbody_row:hover .list_tit a { text-decoration: underline; }
.tbl01 .tbody_row:last-of-type { border-bottom: none; }
.tbl01 .list_tit { display: inline-flex; align-items: center; padding: 0 20px; text-align: left; }
.tbl01 .list_tit a { display: -webkit-box; text-overflow: ellipsis; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 1; word-break: break-all; color: #333; font-size: 18px; font-weight: 500; }
.tbl01 .list_date { color: #777; font-weight: 400; }

.tbl02 { width: 100%; }
.tbl02 tr { display: block; padding: 14px 0; border-bottom: 1px solid #ddd; }
.tbl02 tr:first-of-type { padding-top: 0; }
.tbl02 tr:last-of-type { padding-bottom: 0; border-bottom: 0; }
.tbl02 tr td { display: block; font-size: 17px; }
.tbl02 tr td a { width: 100%; display: flex; gap: 10px; align-items: center; }
.tbl02 tr td a p { display: -webkit-box; flex-grow: 1; text-overflow: ellipsis; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 1; word-break: break-all; color: #444; font-weight: 500; vertical-align: middle; line-height: 34px; }
.tbl02 tr td a em { color: #777; font-size: 16px; line-height: 1; }
.tbl02 tr:hover td a { color: #2343a2; }
.tbl02 tr:hover .category { background: #e9fbf5; border: 1px solid #93c9ba; }
.tbl02 tr:hover td a p { text-decoration: underline; }

/* 데이터 없을때 */
.empty_area { justify-content: center; padding: 30px 0 24px; font-size: 17px; font-weight: 400; text-align: center; color: #888; }
.empty_area.type02 { padding: 30px 0; font-size: 18px; }
.empty_area.type02 i { margin-right: 8px; color: #bbbbbb; vertical-align: text-bottom; }
.empty_area.type02 i img { width: 20px; }

/* 소개페이지 : S */
.about.wrap .wrapper { max-width: 1400px; }
.about_header { align-content: center; height: 60px; border-bottom: 1px solid #ddd; background: #fff; }
.about_container .txt_area { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }
.about_container .txt_area span { margin-bottom: 34px; padding: 10px 22px; color: #d08740; background: #fffeec; border: 1px solid #efc88c; border-radius: 22px; line-height: 1; font-size: 20px; font-family: Nanum Square; font-weight: 600; z-index: 10; }
.about_container .txt_area h2 { margin-bottom: 34px; color: #444; font-weight: 800; font-family: Nanum Square; z-index: 10; }
.about_container .txt_area b { font-weight: 800; } 
.about_container .txt_area p { margin-bottom: 50px; color: #555; font-size: 20px; line-height: 32px; z-index: 10; }

.about_btn_area { display: flex; justify-content: center; align-items: center; gap: 24px; margin-bottom: 60px; font-size: 18px; }
.about_btn_area > div { display: flex; gap: 14px; }
.about_btn_area a { position: relative; padding: 16px 26px; color: #02936c; box-shadow: 0px 3px 9px rgba(36, 165, 158, 0.1); border-radius: 10px; }
.about_btn_area a:hover { box-shadow: 0px 5px 16px rgba(36, 165, 158, 0.15); }
.about_btn_area .start.btn { padding: 16px 30px; }
.about_btn_area .start.btn:after { position: absolute; top: 3px; right: -19px; display: inline-block; content:''; width: 25%; padding-top: 23%; background: url('/images/egovframework/about_btn_leaf-dec467e315c4c0a77219d51bfeeb2c0e.png'); background-size: contain; background-repeat: no-repeat; }
.about_btn_area .download.btn { background: #fff; border: 1px solid #93c9ba; opacity: .9; white-space: nowrap; }
.about_btn_area .download.btn:hover { opacity: 1; }
.about_btn_area .download.btn i { margin-left: 6px; color: #80b5a9; font-size: 15px; }

.about_content01 { position: relative; padding: 70px 0 200px; background: #e7f8f6; background-image: url('/images/egovframework/about_bg-644e61938c1f73fe7387ed483f9f8beb.png'); background-repeat: no-repeat; background-position: bottom; background-size: contain; }
.about_visual_area { position: relative; }
.about_visual_area div { position: relative; background-size: cover; background-repeat: no-repeat; }
.about_visual_area .visual_pc { width: 1080px; height: 636px; margin-left: 50px; background-image: url('/images/egovframework/visual_pc-a7e92337a3e0077eb5fa1c5a7100200e.png'); border: 10px solid #fff; border-radius: 24px; box-shadow: 0px 3px 20px 10px rgba(214, 214, 214, 0.5); }
.about_visual_area .visual_pc:before { top: -161px; left: -3px; width: 165px; padding-top: 16%; background-image: url('/images/egovframework/about_element01-52747858b7146debf7f298db673c510b.png'); }
.about_visual_area .visual_mobile { position: absolute; right: 0; bottom: -60px; width: 290px; height: 563px; background-image: url('/images/egovframework/visual_mobile-7dc3caf2b368fef7dd73ac8fce9e5e39.png'); border: 10px solid #fff; border-radius: 20px; box-shadow: 0px 3px 16px 10px rgba(214, 214, 214, 0.5); }
.about_visual_area .visual_mobile:before { top: -224px; right: 30px; width: 110px; padding-top: 83%; background-image: url('/images/egovframework/about_element02-c8f9a86914b30c0667f3688e5c0ff128.png'); }
.about_visual_area .visual_mobile:after{ bottom: -53px; right: -73px; width: 104px; padding-top: 116%; background-image: url('/images/egovframework/about_element03-6fe787e09ce4f9b92085df15a3f4b9e5.png'); }

.about_content02 .txt_area h2:before,
.about_visual_area .visual_pc:before,
.about_visual_area .visual_mobile:before,
.about_visual_area .visual_mobile:after,
.cloud { position: absolute; display: inline-block; content:''; background-size: contain; background-repeat: no-repeat; }
.cloud { padding-top: 6%; }

.cloud01 {width: 11%;top: 9%;left: 10%;background-image: url('/images/egovframework/bg_cloud01-aeede5f6f295bae1d0b30ab544c177e1.png');}
.cloud02 {width: 7.5%;top: 22%;left: 17%;background-image: url('/images/egovframework/bg_cloud02-796fdb4ee782293720b99564960a3545.png');}
.cloud03 {width: 5%;top: 50%;left: 9%;background-image: url('/images/egovframework/bg_cloud03-e3a21a7695f1aaf5471396b6e21894d0.png');}
.cloud04 {width: 7.5%;top: 9%;right: 11%;background-image: url('/images/egovframework/bg_cloud04-62c0a9ce16b153dfe32625420e47f656.png');}
.cloud05 {width: 9.5%;top: 21%;right: 19%;background-image: url('/images/egovframework/bg_cloud05-7824a44e8f04471713a95829df7be591.png');}
.cloud06 {width: 4.5%;top: 53%;right: 6%;background-image: url('/images/egovframework/bg_cloud06-bb07ac11ddd4a9bc483c9fc4988e111b.png');}

.about_content01 .txt_area b { color: #02936c; }
.about_content01 .txt_area h2 { font-size: 50px; }
.about_content02 { padding: 90px 0 100px;; background: #f6f2e3; }
.about_content02 .txt_area h2:before { width: 47px; height: 47px; background-image: url('/images/egovframework/bg_sunny-33e3d1ec11d506e2eac91359f1aed2a5.png'); top: -18px; left: -27px; z-index: -1; }
.about_content02 .txt_area h2 { position: relative; font-size: 40px;  }
.about_content02 .txt_area b { color: #ce6b13; }

.function_area { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.function_area li { display: flex; justify-content: center; align-items: center; flex-direction: column; padding: 50px 20px; box-shadow: 0px 2.3px 20px rgba(214, 214, 214, 0.5); background: #fff; border-radius: 10px; }
.function_area li i { margin-bottom: 22px; }
.function_area li h3 { position: relative; margin-bottom: 14px; color: #333; font-family: Nanum square; font-size: 20px; font-weight: 800; z-index: 10; }
.function_area li p { color: #777; text-align: center; line-height: 28px; font-size: 18px; }
.function_area li h3::after { content: ""; position: absolute; left: -4px; bottom: 0px; width: 100%; height: 9px; padding: 0 5px; background: #d9f1ee; z-index: -1; }

.about.footer { padding: 30px 0; background: #d4ceb7; }
.about.footer .footer_inner { display: flex; justify-content: space-between; align-items: center; }
.about.footer .f_address { margin-bottom: 10px; color: #615c48; font-size: 16px; }
.about.footer .f_copyright { color: #877c62; font-size: 15px; }

/* 앱 다운로드 팝업 */
.app_down_area { position: relative; }
.app_down_area.open .download_tooltip,
.app_down_area.open .download.btn.app { visibility: visible; opacity: 1; pointer-events: auto; }
.app_down_area.open .download.btn.app i { margin-top: -1px; transform: rotate(180deg) translateY(2px); }

.download_tooltip { position: absolute; left: 50%; top: 76px; transform: translateX(-50%); width: 550px; background: #fff; border-radius: 10px; border: 1px solid #ddd; box-shadow: 0 3px 15px rgba(0,0,0,0.1); padding: 13px 20px 20px; transition: all .1s; z-index: 100; visibility: hidden; opacity: 0; pointer-events: none; }
.download_tooltip::before { content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%); margin-top: -11px; border-left: 11px solid transparent; border-right: 11px solid transparent; border-bottom: 11px solid #d7d7d7; z-index: 1; }
.download_tooltip::after { content: ""; position: absolute; top: 1px; left: 50%; transform: translateX(-50%); margin-top: -11px; border-left: 10px solid transparent; border-right: 10px solid transparent; border-bottom: 10px solid #fff; z-index: 2; }
.tooltip_header { display: flex; justify-content: space-between; align-items: center; font-size: 19px; font-weight: 600; margin-bottom: 12px; }
.tooltip_body { padding: 14px; background: #f7f7f7; border-radius: 8px; }
.tooltip_body h4 { margin-bottom: 5px; color: #555; font-size: 18px; font-weight: 600; }
.tooltip_body p { font-size: 17px; font-weight: 400; color: #666; line-height: 23px; }
.tooltip_body i { font-size: 16px; }
.tooltip_body .fa-ellipsis-vertical,
.tooltip_body .fa-ellipsis { margin-left: 3px; }
.tooltip_body .fa-angle-right { margin: 0 8px; color: #999; }
.tooltip_body .fa-arrow-up-from-bracket { margin: 0 3px; }
.tooltip_message { font-size: 16px; font-weight: 400; color: #999; }

.down_guide { margin-bottom: 12px; padding-bottom: 12px; border-bottom: 1px solid #ddd; }
.down_guide:last-of-type { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
.tooltip_note { display: flex; flex-direction: column; gap: 5px; margin-top: 12px; font-size: 15px; font-weight: 400; color: #888; }


/* 소개페이지 : E */



/* 로그인: S */
#container.noside_cont { height: 100dvh; overflow-y: auto; left: 0; }
#container.noside_cont .contents { height: 100%; }
#container .login logo { text-align: center; margin-bottom: 24px; }
#container .login logo a{ color: #333; }

.wh_box { overflow: hidden; padding: 20px; background: #fff; border-radius: 8px; border: 1px solid #d7d7d7; }
.member_wrap { display: flex; justify-content: center; align-items: center; }
.member_wrap .wh_box { width: 540px; padding: 24px; }
.member_wrap h2 { margin-bottom: 16px; color: #333; font-size: 22px; }

.member_wrap.contents section { display: flex; flex-direction: column; padding: 30px; }
.login .wh_box { padding: 36px 54px 46px; }
.login strong { display: inline-block; margin-bottom: 20px; color: #333; font-size: 20px; font-weight: 600; }
.login input { height: 50px; }
.login .pass_input { margin-top: 12px; } 
.login logo img { width: 120px; }

.pass_input { position: relative; border-radius: 8px; }
.pass_input input { padding: 0 50px 0 16px; }
.pass_input .icon_view i { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: #999; vertical-align: middle; font-size: 17px; }
.pass_input .icon_view i.fa-eye-slash { color: #b4b4b4; }
.login .check_area { display: flex; justify-content: space-between; align-items: center; margin-top: 20px; color: #777; font-size: 17px; }
.login .check_area label { margin-bottom: 0; }
.login .check_area a { color: #666; }
.login .check_area a:hover { color: #555; font-weight: 500; }
.login button { width: 100%; margin-top: 20px; padding: 16px 0; border-radius: 8px; font-size: 20px; font-weight: 500; }
.login .join_area { display: flex; justify-content: center; gap: 10px; margin-top: 40px; color: #666; font-size: 19px; }
.login .join_area span { color: #888; }
.login .join_area a { color: #333; font-weight: 500; border-bottom: 1px solid #333; }
.login .join_area a:hover { font-weight: 600; }

/* .check_tab { display: flex; width: 100%; margin-bottom: 26px; }
.check_tab li { padding: 13px 0; flex: 1; text-align: center; color: #a9a9a9; font-size: 17px; background: #f5f5f5; border: 1px solid #ddd; transition: .2s; }
.check_tab li:hover { cursor: pointer; }
.check_tab li.on { font-weight: 500; }
.check_tab li:last-of-type { border-radius: 0 8px 8px 0; }
.check_tab li:first-of-type { border-radius: 8px 0 0 8px; } */

/* 회원가입 */
.member_wrap .input_group { margin-bottom: 18px; }
.member_wrap .input_group:last-of-type { margin-bottom: 0; }
.member_wrap input { width: 100%; }
.member_wrap input::placeholder { color: #999; }
.member_wrap label { margin-bottom: 10px; color: #777; font-size: 17px; font-weight: 500; }
.member_wrap .form_btnarea { width: 100%; margin-top: 24px; display: flex; gap: 14px; }
.member_wrap .form_btnarea a,
.member_wrap .form_btnarea button { flex: 1; text-align: center; }
.member_wrap .id_check { display: flex; gap: 10px; }
.member_wrap .id_check button { height: auto; white-space: nowrap; }
.member_wrap .alert_error { color: #d05050; font-size: 16px; margin-top: 10px; }
.member_wrap .email input[type="text"] { width: calc(50% - 15px); }
.member_wrap .email select { width: 100%; }
.member_wrap .email > div { width: 100%; }
.member_wrap .personal_info_box { margin-bottom: 20px; }
.member_wrap .personal_info_box label { margin-bottom: 8px; }
.member_wrap .personal_info_box:last-of-type { margin-bottom: 0; }
.member_wrap .agree_box { width: 100%; max-height: 220px; padding: 12px; border: 1px solid #ddd; border-radius: 6px; font-size: 16px; line-height: 22px; color: #555; overflow: auto; }
.member_wrap .agree_box h3 { margin-bottom: 4px; font-size: 17px; }
.member_wrap .agree_box h4 { margin-bottom: 2px; }
.member_wrap .agree_box h3, .member_wrap .agree_box h4 { font-weight: 600; }
.member_wrap .agree_checkarea { text-align: right; font-size: 18px; }
.member_wrap .agree_checkarea label { margin-bottom: 0; color: #555; }
.member_wrap .join_finish { display: flex; flex-direction: column; align-items: center; padding-top: 20px; }
.member_wrap .join_finish span { display: flex; justify-content: center; align-items: center; width: 54px; height: 54px; border: 1px solid #ddd; border-radius: 100%; }
.member_wrap .join_finish span i { color: #f1a578; font-size: 29px; }  
.member_wrap .join_finish b { margin-top: 20px; color: #555; font-size: 20px; }
.member_wrap .join_finish p { margin: 6px 0 20px; color: #777; font-size: 17px; }
.email span { margin: 0 3px; }
.email { display: flex; flex-wrap: wrap; gap: 8px; }
.point { margin-top: 4px; color: #d06969; font-size: 16px; }


/* 헤더 */
#header { width: 100%; height: 54px; display: flex; justify-content: space-between; align-items: center; padding: 0 24px; z-index: 999; background: #f1f4f5; color: #555; }
.header_left { display: flex; gap: 20px; align-items: center; }
.util { display: flex; gap: 12px; }

.btn_hide i img { width: 21px; }
#header .btn_hide { display: none; }
#header .btn_hide i { opacity: .8; }
#header .btn_hide:hover i { opacity: 1; }
.hide #header .btn_hide { display: block; }
.hide #snb { width: 0; opacity: 0; touch-action: none; visibility: hidden; transition: width .1s;}
.hide #snb  + .btn_hide,
.hide #container { left: 0; }

logo { font-size: 18px; }
logo img { width: 82px; }

.chat_login { display: flex; align-items: center; gap: 4px; color: #777; font-size: 18px; }
.chat_login i { display: none; opacity: .8; }
.chat_login:hover { color: #555; }
.chat_login:hover i { opacity: 1; }
.chat_login i img { width: 19px; }

/* 레이아웃 */
#wrap { position: relative; width: 100%; font-family: 'Pretendard'; }
.wrapper { max-width: 1060px; margin: 0 auto; padding: 0 24px; }
#container { position: absolute; height: 100dvh; left: 290px; right: 0; overflow: auto; transition: .2s; }
#container .contents { position: relative; width: 100%; height: calc(100dvh - 54px); overflow: auto; background: #f1f4f5; }

/* 알림 버튼 */
.open_alert_popup { cursor: pointer; }
.btn_mypage_wrap, .btn_notify_wrap { position: relative; }
.btn_notify_wrap .notify_num { position: absolute; top: -3px; right: -3px; display: flex; justify-content: center; align-items: center; padding: 2px 6px; border-radius: 30px; color: #fff; font-size: 10px; }
.btn_notify_wrap .notify_num:hover { background: #f09660; }
.btn_notify,
.btn_mypage { width: 37px; height: 37px; box-shadow: 0px 3px 7px rgba(134, 134, 134, 0.08); border-radius: 100%; }
.btn_mypage i img,
.btn_notify i img { width: 20px; } 
.on.btn_mypage,
.on.btn_notify { border: 1px solid #93c9ba; box-shadow: 0px 3px 9px rgba(36, 165, 158, 0.08); cursor: pointer; }
.on.btn_mypage i img,
.on.btn_notify i img { filter: invert(30%) sepia(50%) saturate(500%) hue-rotate(110deg) brightness(85%) contrast(95%); }

.list_util { display: none; position: absolute; top: 46px; left: -120px; width: 156px; z-index: 10010; background: #fff; line-height: 20px; border: 1px solid #d7d7d7; border-radius: 8px; overflow: hidden; box-shadow: 0px 3px 10px rgba(199, 199, 199, 0.15); }
.list_util > li { border-top: 1px solid #eee; }
.list_util > li:first-of-type { border-top: 0; }
.list_util li a { font-size: 16px; display: block; line-height: 46px; padding: 0 16px; color: #777; }
.list_util li a:hover { background: rgba(177,177,177,.1); }
.list_util li i { margin-right: 6px; }
.list_util .util_mypage i { margin-right: 8px; }
.list_util li i img { width: 16px; }
.list_util .util_logout i img,
.list_util .util_crop i img,
.list_util .util_mngr i img { width: 18px; }

/* 상단 버튼 */
.snb_top { display: flex; gap: 14px; justify-content: flex-end; padding: 14px 24px; border-bottom: 1px solid #ddd; }
.snb_top i { color: #8a8a8a; font-size: 18px; vertical-align: middle; opacity: .7; }
.snb_top i:hover { opacity: 1; }

.button_area { display: flex; margin-top: 20px; align-items: center; justify-content: center; gap: 10px; }

/* 사이드바 : S */
#snb { position: fixed; height: 100dvh; width: 290px; border-right: 1px solid #d7d7d7; background: #fff; transition: .1s; opacity: 1; z-index: 9999; }
.snb_inner { display: flex; flex-direction: column; height: 100%; margin: 24px 24px 0; }
.new_chat_btn { display: block; margin-bottom: 26px; padding: 16px; border-radius: 10px; font-size: 18px; text-align: center; box-shadow: 0px 3px 7px rgba(36, 165, 158, 0.1); }
.new_chat_btn i { font-size: 19px; }
.new_chat_btn:hover { box-shadow: 0px 4px 10px rgba(36, 165, 158, 0.1); }
.snb_container { height: calc(100% - 296px); }
.snb_menu_wrap { flex-shrink: 0; }
.snb_menu li span { color: #02936c; font-size: 18px; }
.snb_menu li i { margin-right: 8px; }
.snb_menu li i img { filter: invert(30%) sepia(50%) saturate(500%) hue-rotate(110deg) brightness(85%) contrast(95%); width: 20px; vertical-align: top; }
.chat_history_wrap { flex: 1; margin: 0 -10px; margin-top: 14px; overflow: hidden auto; }
.more_btn { display: none; }

/* 더보기 드롭다운 */
.more_util { width: 118px; top: 37px; left: unset; right: -124px; }
.more_util .more_del a { color: #a87070; }
.more_util li a { padding: 0 13px; line-height: 42px; }

/* 대화내역 */
.chat_history:first-of-type { margin-top: 0; }
.chat_history { margin-top: 8px; }
.chat_history > ul > li.active { background: #eaecf0 !important; }
.chat_history > ul > li.active > div > p a { color: #555; font-weight: 600; }
.chat_history em { display: block; margin: 0 0 6px 10px; color: #999; font-size: 16px; }
.chat_history > ul { width: 100%; }
.chat_history > ul > li { margin: 2px 0; padding: 8px 10px; border-radius: 8px; cursor: pointer; }
.chat_history > ul > li > div { position: relative; display: flex; }
.chat_history > ul > li.bg_on,
.chat_history > ul > li:hover { background: #f2f3f5; }
.chat_history > ul > li.bg_on .more_btn,
.chat_history > ul > li:hover .more_btn { display: block; }
.chat_history > ul > li > div > p a,
.chat_history > ul > li span { display: -webkit-box; width: 100%; text-overflow: ellipsis; overflow: hidden; -webkit-box-orient: vertical; word-break: break-all; }
.chat_history > ul > li span { padding-top: 4px; padding-left: 24px; color: #888; font-size: 16px; font-weight: 400; -webkit-line-clamp: 2; line-height: 23px; }
.chat_history > ul > li > div > i { margin-right: 8px; }
.chat_history > ul > li > div i img { width: 15px; vertical-align: inherit; }
.chat_history > ul > li > div > p { width: 100%; }
.chat_history > ul > li > div > p a { color: #777; -webkit-line-clamp: 1; }

.user_menu { margin: 24px; padding-top: 24px; border-top: 1px solid #ddd; }
.user_menu li { margin-bottom: 22px; }
.user_menu li:last-of-type { margin-bottom: 0; }
.user_menu li a { color: #555; font-size: 17px; }
.user_menu li a:hover,
.user_menu li.active a { color: #444; font-weight: 600; }
.user_menu li a.issue_menu { color: #e16819; }

/* 사이드바 : E */

/* 채팅화면 : S */
.chat_wrap { display: flex; flex-direction: column; height: 100%; padding-bottom: 30px; }
.chat_wrap .chat_tit { text-align: center; color: #555; font-weight: 500; line-height: 36px; background: #e8eced; }
.query_bubble { display: flex; flex-direction: column; align-items: flex-end; margin-top: 24px; }
.query_bubble_inner { max-width: 800px; display: inline-block; padding: 12px 18px; background: #56ae96; color: #fff; border-radius: 15px 2px 15px 15px; }
.answer_bubble { margin-top: 24px; }
.answer_bubble_inner { display: inline-block; min-width: 540px; max-width: 800px; padding: 16px 18px 18px; background: #fff; color: #333; border: 1px solid #d7d7d7; border-radius: 2px 15px 15px 15px;  } 
.answer_bubble_inner h3,
.answer_bubble_inner h2 { margin-bottom: 6px; font-weight: 600; font-size: 19px; }
.answer_bubble_inner h3 strong { font-weight: 600; }
.answer_bubble_inner p:first-of-type { margin-top: 0; }
.answer_bubble_inner p { margin: 8px 0; }
.answer_bubble_inner p strong { font-size: 18px; font-weight: 600; }
.answer_bubble_inner ul, .chat_wrap .answer_bubble_inner ol { display: block; padding-inline-start: 20px; }
.answer_bubble_inner li:first-of-type { margin-top: 0; }
.answer_bubble_inner ul li { margin: 6px 0; list-style-type: disc; text-indent: -4px; }
.answer_bubble_inner ol > li { list-style-type: auto; }
.answer_bubble_inner li strong { font-weight: 600; }
.answer_bubble_inner table th { white-space: nowrap; min-width: 130px; padding: 0 6px 6px; border-bottom: 1px solid #d7d7d7; }
.answer_bubble_inner table td { padding: 6px; border-bottom: 1px solid #e9e9e9; font-size: 16px; line-height: 26px; text-align: center; }
/* .answer_bubble_inner table tr td:first-child { text-align: left; } */
.answer_bubble_inner table td strong { font-weight: 600; }
.chat_wrap mark { padding: 2px 5px; background-color: #fcefb4; }
.chat_body { flex: 1 1 auto; overflow: auto; font-size: 17px; line-height: 30px; font-weight: 400; word-break: break-word; overflow-wrap: break-word; white-space: normal; }
.chat_body > .wrapper { padding-bottom: 30px; }

/* 좋아요, 싫어요 버튼 */
.feedback_area { display: flex; margin-top: 18px; padding-top: 14px; justify-content: space-between; border-top: 1px solid #ddd; }
.feedback_area .disflex { gap: 10px; }
.feedback_area button { width: 31px; height: 31px; border-radius: 100%; }
.feedback_area button:hover { box-shadow: unset; }
.feedback_area button i img { width: 17px; }
.feedback_area .good_btn.on { background: #eafcf7; border: 1px solid #93c9ba; }
.feedback_area .good_btn.on i img { filter: invert(30%) sepia(50%) saturate(500%) hue-rotate(110deg) brightness(85%) contrast(95%); }
.feedback_area .bad_btn.on { background: #fdf8e3; border: 1px solid #dbc382; }
.feedback_area .bad_btn:hover { border: 1px solid #dbc382; } 
.feedback_area .bad_btn:hover i img,
.feedback_area .bad_btn.on i img { filter: invert(51%) sepia(75%) saturate(700%) hue-rotate(10deg) brightness(98%) contrast(92%); }
.feedback_area .tts_btn i img { width: 21px; }
.good_btn i img { margin-top: -4px; }
.bad_btn i img { margin-bottom: -1px; margin-right: 2px; }

/* 채팅 인풋 */
.chat_input { width: 100%; min-height: 56px; padding: 14px 16px 10px 16px; background: #fff; border: 1px solid #d7d7d7; border-radius: 10px; overflow: hidden; }
.chat_input .input_content { display: flex; align-items: center; flex-direction: column; }
.chat_input textarea { width: 100%; height: 24px; max-height: 142px; padding: 0; background: none; color: #555; font-size: 17px; overflow-y: auto; }
.chat_input textarea:placeholder { color: #999; }
.chat_input .chat_btn_area { display: flex; justify-content: space-between; width: 100%; margin-top: 10px; padding-left: 0; padding-top: 6px; border-top: 1px solid #eee; }
.chat_input .chat_btn_wrap { display: flex; gap: 14px; align-items: center; }
.chat_input .chat_btn_area button i img { width: 21px; opacity: 0.8; } 
.chat_input .chat_btn_area button:hover i img  { opacity: 1; filter: invert(17%) sepia(73%) saturate(0%) hue-rotate(143deg) brightness(85%) contrast(92%); }
.chat_input .chat_btn_area .pause { width: 29px; height: 30px; border: 1px solid #ccc; border-radius: 100%; display: flex; align-items: center; justify-content: center; }
.chat_input .chat_btn_area .pause i { display: inline-block; width: 11px; height: 12px; background-color: #ababab; border-radius: 2px; transition: transform 0.2s ease; }
.chat_input .chat_btn_area .pause:hover { border: 2px solid #ccc; }
.chat_input .chat_btn_area .pause:hover i { background-color: #888; }
.chat_submit_btn { padding: 7px 10px; border-radius: 6px; }
.chat_submit_btn i { color: #fff; font-size: 18px; }

/* 인풋 첨부파일 */
.chat_input .input_file_wrap { position: relative; display: flex; gap: 16px; }
.chat_input .input_file_wrap::after { content: ""; position: absolute; top: 0; right: -16px; width: 40px; height: 100%; background: linear-gradient(to right, transparent, #fff); pointer-events: none; z-index: 10; }
.chat_input .input_file_wrap .filebox { margin-top: 0; margin-bottom: 14px; }
.chat_input .del_btn { position: absolute; top: -6px; right: -5px; background: #555; padding: 2px 5px; width: 19px; height: 19px; color: #fff; font-size: 12px; border-radius: 100%; }
.chat_input .del_btn i { margin: 2px -1px 0px 0px; }

/* 음성인식 */
.voice_btn.on { animation: blink 1.33s ease-out infinite; }
@keyframes blink { /* 음성인식 아이콘 애니메이션 */
  0% {
    opacity: 1;
  }
  20% {
    opacity: .7;
  }
  100% {
    opacity: 1;
  }
}

/* 채팅 첫화면 */
.chat_body.chat_first { align-content: center; }
.chat_body.chat_first .wrapper { padding-bottom: 60px; }
.greeting logo { margin-bottom: 30px; font-size: 26px; }
.greeting { display: flex; flex-direction: column; align-items: center; justify-content: center; }
.greeting h2 { text-align: center; margin-bottom: 40px; }
.greeting h2 span { display: inline-block; margin-bottom: 18px; color: #777; font-size: 30px; font-weight: 500; }
.greeting h2 p { color: #333; line-height: 44px; font-size: 38px; font-weight: 600;  }
.greeting .expert_message em { color: #02936c; font-weight: 600; }
.greeting .expert_message p { font-size: 34px; }
.greeting .topic_wrap { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; width: 100%; }
.greeting .topic_wrap li { flex: 1; }
.greeting .topic_wrap li a { width: 100%; padding: 14px 0; border-radius: 10px; text-align: center; font-size: 20px; font-weight: 600; }

/* 추천질문 */
.recommend_area_header { margin: 12px 0 4px; }
.recommend_area_header b { color: #444; font-weight: 500; }
.recommend_area_header i { margin-right: 4px; }
.recommend_area_header i img { width: 13px; margin-top: -4px; }
.recommend_question_item { margin-bottom: 7px; }
.recommend_question_item p { display: inline-block; padding: 4px 12px; color: #6f767a; background: #e1e7eb; border-radius: 7px; line-height: 1.4; }
.recommend_question_item p:hover { color: #444; background: #cde8e2; }

/* gpt 가이드 메시지 */
.gpt_guide { flex-wrap: wrap; margin-top: 12px; display: flex; gap: 12px; line-height: 26px; }
.gpt_guide p { color: #777; }
.gpt_guide p b { font-weight: 600; }
.gpt_guide a { display: flex; gap: 12px; font-weight: 500; border-bottom: 1px solid #e0a781; color: #e87d38; }
.gpt_guide a:hover { font-weight: 600; }

/* 피드백 진행 버튼 */
.feedback_btn_wrap { margin-top: 20px; padding-top: 16px; border-top: 1px solid #dddddd; text-align: center; }
/* .feedback_btn span { padding-bottom: 2px; border-bottom: 1px solid #999; } */
.feedback_btn i { margin-right: 6px; font-size: 17px;}

/* 첨부파일 */
.filebox { position: relative; display: flex; flex-direction: column; align-items: flex-end; margin: 14px 0; }
.filebox i img { width: 18px; }
.filebox a { display: flex; gap: 12px; align-items: center; width: 270px; padding: 10px 12px; background: #fff; border: 1px solid #d7d7d7; border-radius: 10px; color: #777; }
.filebox a div { padding: 3px 9px 5px 9px; background: #dcf3ed; border-radius: 7px; line-height: 25px; }
.filebox a span { display: -webkit-box; width: 100%; text-overflow: ellipsis; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 1; word-break: break-all; font-size: 16px; font-weight: 400; }
.filebox a:hover span { text-decoration: underline; }
.filebox + .query_bubble { margin-top: 14px; }
.recommend_question_item + .filebox { margin-top: 24px; }
.filebox .spinner-container { margin-top: 2px !important; padding: 0; }
.filebox .loading-overlay { background: none !important; }
.filebox .loading-spinner { width: 22px !important; height: 22px !important; border-width: 2px !important; border-color: rgb(78 162 140) rgb(78 162 140) transparent transparent !important; }
	
/* 로딩 애니메이션 */
.answer_bubble_inner.loading { min-width: auto; width: auto; padding: 8px 18px 14px; }
.loading span { display: inline-block; width: 6px; height: 6px; background-color: #c5d2d1; border-radius: 50%; animation: loading 1s linear infinite; }
.loading span:nth-child(1) { animation-delay: 0s; }
.loading span:nth-child(2) { animation-delay: 0.2s; margin: 0px 8px }
.loading span:nth-child(3) { animation-delay: 0.4s; }
@keyframes loading {
  0%, 100% {
    opacity: 0;
    transform: scale(0.9);
  }
  50% {
    opacity: 1;
    transform: scale(1.2);
  }
}

/* 출처 */
.answer_bubble_inner .ref_num { display: inline-flex; justify-content: center; align-items: center; width: 18px; height: 18px; margin: 2px 8px 0 0; background: #dedede; color: #666; border-radius: 100%; font-size: 12px; font-weight: 600; vertical-align: text-top; text-indent: 0; }
.answer_bubble_inner .ref_area li a:hover .ref_num,
.answer_bubble_inner .ref_num:hover { background: #666666; color: #fff; }
.answer_bubble_inner .ref_num:first-of-type { margin-left: 12px; }

.answer_bubble_inner .ref_area { display: flex; gap: 8px; align-items: center; margin-top: 16px; }
/* .ref_area strong { color: #777; font-size: 16px; font-weight: 600; white-space: nowrap; }
.ref_area strong:before { display: inline-block; content: ''; width: 3px; height: 15px; margin-right: 5px; background: #bbb; border-radius: 2px; vertical-align: middle; }
.ref_area ul { display: flex; flex-wrap: wrap; }
.ref_area li a { padding: 4px 6px; color: #555; line-height: 1; font-size: 16px; }
.ref_area li a:hover { background: #f0f0f0; border-radius: 6px; color: #333; } */
.answer_bubble_inner .ref_area strong { font-weight: 400; color: #555; }
.answer_bubble_inner .ref_area li .ref_num { margin: 0 6px 0 0; }

.answer_bubble_inner .tbl_box { margin-bottom: 12px; }

/* 채팅화면 : E */

/* 전문가 문의 리스트 */
.sub_tit { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.sub_tit h1 { font-size: 25px; }
.sub_tit p { color: #777; font-weight: 400; font-size: 18px; }
.sub_tit b { color: #02936c; font-weight: 600; }
.sub_tit > div { display: flex; flex-wrap: wrap; align-items: center; gap: 15px; }
.sub .wrapper{ margin-top: 20px; margin-bottom: 30px; }
.sub_board.tbl_list .wh_box { padding: 20px 20px 10px; }

.status { display: inline-block; padding: 6px 15px; border-radius: 24px; }
.status.pending { background: #eaf0f3; }
.status.done { background: #dcf3ed; }
.pending { color: #888; }
.done { color: #02936c; }
.prev_count { margin-left: 14px; color: #e3722e; font-size: 16px; white-space: nowrap; padding: 4px 8px; border: 1px solid #e3c8b7; border-radius: 6px; }

.qna_tbl .thead_status,
.qna_tbl .thead_date,
.qna_tbl .list_status,
.qna_tbl .list_date { width: 15%; }
.qna_tbl .thead_tit,
.qna_tbl .list_tit { width: 70%; }

/* 전문가 문의 상세 */
.sub_board.detail .wh_box { padding: 16px; }
.sub_board.detail .titbox { padding: 16px; }
.sub_board.detail .ico_attach img { vertical-align: bottom; }
.view_head { position: relative; }
.view_head h3 { width: calc(100% - 60px); margin-bottom: 10px; color: #333; font-size: 19px; font-weight: 600; }
.delete_btn { position: absolute; top: 0; right: 0; }
.view_info { display: flex; flex-wrap: wrap; gap: 10px; color: #666; font-weight: 400; font-size: 16px; }
.view_info span:after { display: inline-block; margin-left: 12px; content:""; width: 1px; height: 10px; background: #b7b7b7; }
.view_info span:last-of-type:after { display: none; }
.board_view { min-height: 400px; padding: 16px 10px 4px; color: #444; line-height: 24px; font-weight: 500; }
.board_view img { max-width: 540px; margin-top: 16px; }
.view_status { font-weight: 500; }

.detail_file { display: flex; gap: 14px; padding-top: 12px; margin-top: 10px; border-top: 1px solid #dedfdf; font-size: 16px; }
.detail_file dt { color: #555; white-space: nowrap; }
.detail_file dd { display: flex; gap: 6px 14px; flex-wrap: wrap; }
.detail_file dd span { display: flex; }
.detail_file dd span a { color: #666; font-weight: 400; }
.detail_file dd span a:hover { text-decoration: underline; }
.ico_attach { margin-right: 6px; }
.ico_attach img { width: 16px; filter: invert(61%) sepia(8%) saturate(0%) hue-rotate(157deg) brightness(108%) contrast(91%); }

.expert_reply { padding: 16px; border-radius: 6px; border: 1px solid #e1e1e1; box-shadow: 0px 3px 7px rgba(134, 134, 134, 0.08); }
.expert_reply h4 { margin-top: 3px; color: #5e7da9; font-size: 18px; font-weight: 600; }
.expert_reply .detail_file { margin-top: 8px; padding-top: 0; border-top: none; }
.expert_reply .detail_file dt { display: none; }
.reply_tit { display: flex;  gap: 10px; }
.reply_tit i img { width: 15px }
.reply_inner { margin: 7px 0 0 26px; }
.reply_txt { margin-top: 6px; line-height: 24px; color: #444; font-weight: 500; }

.prev_view { display: none; }
.prev_view .titbox { background: #f6f6f6; }
.prev_view .wh_box { margin-top: 12px; }
.prev_btn { display: inline-block; margin-top: 20px; padding: 8px 14px; color: #666; font-size: 16px; background: #fff; border: 1px solid #d7d7d7; border-radius: 20px; font-weight: 500; }
.prev_btn i { margin-left: 6px; font-size: 14px; color: #999; }
.prev_btn.active i { padding-top: 2px; transform: rotate(180deg); }

.sub_btn_area { display: flex; justify-content: center; gap: 10px; margin-top: 16px; }

/* 전문가 문의 등록 */
.sub_board_form .wh_box { padding: 30px 24px; }
.sub_board_form dl { display: flex; margin-bottom: 20px; }
.sub_board_form .wh_box > div:last-of-type dl { margin-bottom: 0; }
.sub_board_form > .wh_box > div:last-of-type dl { margin-bottom: 0; }
.sub_board_form dl dt { width: 120px; flex-shrink: 0; margin-top: 8px; color: #555; font-size: 17px; font-weight: 500; line-height: 1; }
.sub_board_form dl dd { width: 100%; color: #555; font-size: 16px; }
.sub_board_form input[type="checkbox"] { margin: -2px 4px 0 0; }
.sub_board_form .bbs_title { width: 100%; }
.sub_board_form select { padding: 0 36px 0 14px; font-size: 16px; }
.sub_board_form textarea { width: 100%; padding: 10px 16px; border: 1px solid #ddd; border-radius: 8px; }
.sub_board_form input { width: 100%; }

.file_upload dl { align-items: flex-start; }
.file_detail_form:has(p) { margin-top: 10px; padding: 8px 16px; background: #f6f6f6; border-radius: 5px; border: 1px solid #ddd; }
.file_detail_form dt { padding-left: 0; }
.file_detail_form p { display: flex; line-height: 32px; }
.file_detail_form p a { display: -webkit-box; text-overflow: ellipsis; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 1; word-break: break-all; color: #666; font-weight: 400; font-size: 16px; }
.file_detail_form p:hover a { text-decoration: underline; }
.file_detail_form .fa-xmark { margin-left: 8px; color: #666; font-size: 13px; background: #d8d8d8; border-radius: 100%; padding: 2px 4px; }
.drop_area { padding: 26px; background: #f6f6f6; border: 1px dashed #d6d6d6; border-radius: 8px; color: #888; text-align: center; }
.drop_area p { margin-bottom: 12px; color: #666; font-size: 16px; line-height: 20px; font-weight: 400; }

/* 공지사항 */
.set_search { display: flex; gap: 8px; }
.set_search input { height: 39px; line-height: 39px; }
.notice_tbl .thead_num { width: 12%; }
.notice_tbl .thead_date  { width: 20%; }
.notice_tbl .list_num { width: 12%; color: #888; font-weight: 400; }
.notice_tbl .list_date { width: 20%; }
.notice_tbl .thead_tit,
.notice_tbl .list_tit { width: 70%; }
.notice_tbl .list_tit { padding-left: 0; }
.notice_tbl .list_num .primary { display: inline-block; border: 1px solid #93c9ba; border-radius: 5px; color: #02936c; background: #fff; padding: 4px 9px; font-size: 16px; }
.tbl01 .list_file { margin-left: 8px; }
.tbl01 .list_file img { width: 17px; }

/* 페이징 */
.paging { margin-top: 20px; }
.paging .num { display: flex; gap: 12px; align-items: center; justify-content: center; }
.paging .num .num { gap: 8px; }
.paging .pageNoClass { width: 27px; padding: 4px 0; border-radius: 100%; text-align: center; }
.paging .pageNoClass:hover { background: #dae1e3; color: #666; }
.paging a { color: #b1b1b1; font-size: 17px; }
.paging a:hover { color: #777; }
.paging .pageNoClass { color: #666; font-size: 16px; vertical-align: text-top; }
.paging .pageNoClass.on { background: #41a591; color: #fff !important; }

/* 마이페이지 */
.member_update dl { display: flex; margin-bottom: 20px; }
.member_update dl:last-of-type { margin-bottom: 0; }
.member_update label { width: 160px; margin-top: 14px; color: #555; font-size: 17px; font-weight: 500; cursor: auto; }
.member_update input { width: 300px; }
.member_update select { min-width: 180px; }
.member_update .email input { width: 180px; }

/* 나의 작물 정보 */
.crop_card_wrap { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.crop_card { border: 1px solid #ddd; border-radius: 6px; padding: 16px; background: #fff; }
.crop_title { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid #e8e8e8; }
.crop_title .crop_name_area { display: flex; align-items: center; gap: 14px; }
.crop_title i { width: 40px; height: 40px; display: flex; justify-content: center; align-items: center; background: #eff5f7; border-radius: 50%; }
.crop_title i img { width: 26px; height: 26px; }
.crop_title .crop_name_area span { color: #333; font-weight: 600; font-size: 18px; }
.crop_card { cursor: pointer; transition: .1s; }
.crop_card:hover { border: 1px solid #93c9ba; box-shadow: 0px 4px 10px rgba(36, 165, 158, 0.1); }
.crop_card dl { display: flex; margin-bottom: 14px; color: #666; }
.crop_card dl:last-of-type { margin-bottom: 0; }
.crop_card dt { min-width: 70px; color: #555;  }
.crop_card dd { font-weight: 400; }
.crop_select select { width: 300px; }
.crop_select,
.address { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.address button { margin-left: 4px; }

/* 대표 작물 */
.crop_card.representative { border: 1px solid #93c9ba; border-left: 6px solid #55a88d; background: #f7fdfc; }
.crop_card.representative .rep_badge { background: #40a886; border-radius: 19px; padding: 8px 11px; color: #fff; font-size: 16px; line-height: 1; }
.crop_card.representative .crop_title { border-bottom: 1px solid #ddd; }
.crop_card.representative .crop_title i { background: #e7eef1; }

#mainForm .wh_box { position: relative; }

/* .member_update .favoriteContainer { width: fit-content; position: absolute; top: 20px; right: 20px; display: flex; align-items: center; gap: 4px; margin-top: 0; padding: 8px 15px 8px 10px; border-radius: 30px; border: 1px solid #d9d9d9; color: #888; font-size: 17px; }

#favorite { display: none; }
#favorite+.favoriteContainer svg { fill: #f3f3f3; stroke: #b7b7b7; }
#favorite:checked+.favoriteContainer svg { fill: #ffeb49; stroke: #888; animation: heartButton 1s; }
#favorite:checked+.favoriteContainer { color: #555; border: 1px solid #ccc; }

@keyframes heartButton { 0% { transform: scale(1); }
	25% {
		transform: scale(1.3);
	}

	50% {
		transform: scale(1);
	}

	75% {
		transform: scale(1.3);
	}

	100% {
		transform: scale(1);
	}
}
#favorite+.favoriteContainer .action { position: relative; overflow: hidden; display: grid;	}
#favorite+.favoriteContainer .action span {	grid-column-start: 1; grid-column-end: 1; grid-row-start: 1; grid-row-end: 1; transition: all 0.5s; }
#favorite+.favoriteContainer .action span.option-1 { transform: translate(0px, 0%);	opacity: 1;	}

#favorite:checked+.favoriteContainer .action span.option-1 { transform: translate(0px, -100%); opacity: 0; }

#favorite+.favoriteContainer .action span.option-2 { transform: translate(0px, 100%); opacity: 0; }

#favorite:checked+.favoriteContainer .action span.option-2 { transform: translate(0px, 0%);	opacity: 1;	} */
.modify_radio_area { line-height: 26px; }
.modify_radio_area dd label { width: 100px; color: #666; font-weight: 400; }
.modify_radio_area label { margin-top: 6px; }

.member_update input[type="checkbox"]+label::before,
.member_update input[type="checkbox"]+label::after { content: none; display: none; }
.member_update input[type="radio"]:checked + label span { border-color: #3e8d72;}
.member_update input[type="radio"]:checked + label span::after { background: #3e8d72; }

/* 주소 검색 팝업 */
.eddress_search_popup { padding: 20px; }
.address_tit { margin-bottom: 10px; font-weight: 600; font-size: 19px; }
.eddress_search_form { margin-bottom: 16px; }
.eddress_search_form input { width: calc(100% - 68px); }
.eddress_search_form button { margin-left: 4px; }

.address_info h4 { color: #555; font-size: 17px; font-weight: 500; line-height: 1.4; }
.address_info h4 span { color: #e16819; font-size: 16px; }
.address_info dl { background: #f3f4f5; padding: 10px 12px; border-radius: 8px; margin-top: 8px; font-size: 16px; }
.address_info dt { color: #333; }
.address_info dd { margin-top: 5px; color: #666; font-weight: 400; font-size: 15px; }

.address_list { padding-top: 16px; border-top: 1px solid #eaeaea; }
.address_list h4 { margin-bottom: 8px; font-weight: 500; font-size: 18px; }
.address_list table { width: 100%; border: 1px solid #ddd; padding: 0 10px; }

.address_list table td { margin-bottom: 16px; padding: 10px 0; border-bottom: 1px solid #eaeaea; color: #555; }
.address_list table tr { cursor: pointer; }
.address_list table tr:last-of-type td { border-bottom: none; }

.search_none { border: 1px solid #ddd; padding: 20px 10px; color: #777; text-align: center; }

/* 전남 농업 이슈 분석 */
.kywd_anls .box.column02 { display: grid; grid-template-columns: 40% 1fr; gap: 20px; }
.kywd_anls .box.column02.top { padding-bottom: 16px; margin-bottom: 16px; border-bottom: 1px solid #ddd; }
.stit_wrap { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 12px; }
.stit_wrap h3 { font-size: 20px; font-weight: 600; }
.stit_wrap b,
b.keywordName { color: #e37126; font-weight: 700; }
.stit_wrap p { color: #777; font-size: 16px; }
.grey_box { padding: 20px; background: #f2f5f6; border-radius: 8px; }
.sub_tit .top_date { display: flex; align-items: center; gap: 4px; color: #888; }
.sub_tit .top_date input { height: 36px; line-height: 36px; color: #777; font-size: 16px; background-size: 18px; border: 1px solid #d7d7d7; border-radius: 6px; }
.term_selector { display: flex; align-items: center; }
.term_selector span { margin-right: 12px; color: #555; font-weight: 400; }
.term_buttons { display: flex; border: 1px solid #d7d7d7; border-radius: 8px; overflow: hidden; }
.term_buttons .term { color: #2f4f4f; background: #eeefef; border: none; padding: 7px 16px; color: #999; cursor: pointer; border-left: 1px solid #d7d7d7; font-size: 16px; }
.term_buttons .term:first-child { border-left: none; }
.term_buttons .term:hover { background: #fdfdfd; color: #777; }
.term_buttons .term.on { background: #fff; font-weight: 600; color: #777; }
.topten { margin-left: 10px; padding: 4px 8px; background: #e1f2ed; font-size: 15px; border-radius: 5px; vertical-align: 2px; color: #6dae9c; }

.kywd_anls .wrapper { max-width: 1260px; }
.kywd_anls h1 { display: inline-block; vertical-align: middle; }
.key_week { margin-left: 8px; background: #d5ddf0; color: #253b77; }
.key_rank a { padding: 7px 16px 7px 10px; color: #333; border-right: 0; border-radius: 8px; color: #777; font-size: 18px; }
.key_rank a .rank_num { width: 24px; height: 24px; display: flex; justify-content: center; align-items: center; margin-right: 8px; background: #cbced7; border-radius: 50%; color: #fff; font-size: 16px; }
.key_rank a:hover .rank_num { background: #b0b4bd; }
.key_rank a > em { width: 46px; float: right; color: #777; text-align: right; }
.key_rank a i { margin-left: 8px; }
.key_rank a i.fa-chevron-up { color: #ffb2b2; }
.key_rank a i.fa-chevron-down { color: #b9d2ff; }
.key_rank a i.fa-minus { color: #c2d5d9; }
.key_rank .rank_item a { display: flex; }
.key_rank .rank_keyword { flex-grow: 1; }
.key_rank,
.key_rank a { width: 100%; }
.key_rank a.on { background: #54a790 !important; color: #fff!important; }
.key_rank a:hover { background: #dbf2eb; }
.key_rank a.on .rank_num { color: #666!important; background: #fff!important; }
.key_prog p { padding: 10px; color: #24836f; background: #d3e8e2; font-weight: 500; text-align: center; border-radius: 16px; }

.wordcloud { border: 1px solid #ddd; border-radius: 8px; }

.rank_change i { min-width: 20px; }
.rank_change em { font-weight: 400; }
.issue_more_btn { color: #777; }
.issue_more_btn i { margin-left: 4px; }

.category { display: inline-block; padding: 5px 12px; word-break: keep-all; color: #24836f; background: #fff; border: 1px solid #c8dad5; font-size: 16px; font-weight: 500; border-radius: 14px; transition: .1s; }

/* 키워드 뉴스 새창 */
#container.kywd_news .contents { height: 100%; }
.kywd_news .contents .wrapper { padding: 20px 30px; }
.kywd_news h3 { font-size: 22px; }
.kywd_news .news_link { width: 100%; display: flex; align-items: center; }
.kywd_news .news_link:hover .list_tit span { text-decoration: underline; }
.kywd_news .news_link:hover .category { background: #e9fbf5; border: 1px solid #93c9ba; }
.kywd_news .list_tit { font-weight: 400; }
.kywd_news .list_tit span { display: -webkit-box; flex-grow: 1; text-overflow: ellipsis; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 1; word-break: break-all; }
.kywd_news .tbl01 .tbody_row { padding: 12px 0; }

.kywd_tbl .thead_cate,
.kywd_tbl .thead_date,
.kywd_tbl .list_cate,
.kywd_tbl .list_date { width: 15%; }
.kywd_tbl .thead_tit,
.kywd_tbl .list_tit { width: 70%; }


/* Small PC */
@media screen and (max-width: 1500px){
	
	/* 소개페이지 */
	.about_visual_area .visual_pc { width: 80%; aspect-ratio: 1200 / 707; height: auto; }
	.about_visual_area .visual_mobile { width: 22%; height: auto; aspect-ratio: 190 / 370; }
	.about_visual_area .visual_mobile:before { top: -41%; width: 41%; }
	.about_visual_area .visual_mobile:after { display: none; }
	.about_visual_area .visual_pc:before { top: -27%; width: 16%; }
	.cloud01 { top: 6%; left: 5%; }
	.cloud02 { top: 22%; left: 10%; }
	.cloud04 { top: 7%; right: 4%; }
	.cloud05 { top: 24%; right: 8%; }
	.function_area { gap: 26px; }

}

/* Tablet */
@media screen and (max-width: 1023px){

	#container { left: 0; }
	.sub .wrapper { margin-top: 10px; }
	
	/* 소개페이지 */
	.about_visual_area .visual_pc { aspect-ratio: 1180 / 839; margin-left: 40px; border-radius: 14px; border-width: 7px; background-image: url(/images/egovframework/visual_tablet-2778ef8d8a6796e75517a449bbcb6bd9.png);  }
	.about_visual_area .visual_mobile { bottom: -40px; border-radius: 12px; border-width: 7px; }
	.about_visual_area .visual_pc:before { top: -26%; width: 19%; padding-top: 20%; }
    .about_visual_area .visual_mobile:before { top: -45%; right: 10px; width: 47%; padding-top: 93%; }
	.about_container .txt_area span { margin-bottom: 29px; font-size: 18px; }
	.about_container .txt_area p { margin-bottom: 30px; line-height: 30px; font-size: 19px; }
	.about_btn_area a { padding: 14px 22px; }
	.about_btn_area .start.btn { padding: 14px 24px; }
	.about_btn_area { flex-direction: column; gap: 14px; }
	.about_content01 { padding: 60px 0 140px; }
	.about_content01 .txt_area h2 { font-size: 40px; }
	.about_container .txt_area h2 { margin-bottom: 24px; }
	.cloud01 { top: 11%; width: 14%; }
	.cloud02 { top: 29%; left: 12%; width: 12%; }
	.cloud03 { width: 8%; }
	.cloud04 { top: 9%; right: 7%; width: 10%; }
	.cloud05 { top: 29%; width: 12%; }
	.cloud06 { width: 7.5%; }
	.about_content02 { padding: 70px 0 80px; }
	.about_content02 .txt_area h2 { font-size: 36px; }
	.function_area { display: grid; grid-template-columns: 1fr; }
	.function_area li { padding: 30px; }
	
	/* 헤더 */
	.btn_hide i img { content: url('/images/egovframework/ico_m_sidebar-996219517852de05b9c923b121a2577b.png'); }
	.header_left { gap: 10px; }
	
	/* 사이드바 */
	#snb { width: 70%; }
	.sidebar_dim { display: block; }
	.snb_top { justify-content: space-between; flex-direction: row-reverse; gap: 10px; padding: 10px 24px; }
	.snb_container { height: calc(100% - 298px); }
	.btn_hide { padding: 5px 8px 5px 0; }
	
	/* 채팅화면 */	
	.answer_bubble_inner { min-width: 100%; max-width: 100%; width: 100%; }
	.query_bubble_inner { max-width: 100%; }
	
	/* 전남 농업 이슈 분석 */
	.kywd_anls .sub_tit { flex-direction: column; align-items: start; }
	.kywd_anls .box.column02 { grid-template-columns: 1fr; }
	.kywd_anls .box.column02.top { margin: 0 0 24px; padding-bottom: 0; border-bottom: none; }
	.key_rank { display: grid; grid-template-columns: 1fr 1fr; }
	.key_rank li:nth-child(1) { order: 1; }
	.key_rank li:nth-child(2) { order: 3; }
	.key_rank li:nth-child(3) { order: 5; }
	.key_rank li:nth-child(4) { order: 7; }
	.key_rank li:nth-child(5) { order: 9; }
	.key_rank li:nth-child(6) { order: 2; }
	.key_rank li:nth-child(7) { order: 4; }
	.key_rank li:nth-child(8) { order: 6; }
	.key_rank li:nth-child(9) { order: 8; }
	.key_rank li:nth-child(10) { order: 10; }
	
}


/* Tablet */
@media screen and (max-width: 839px){
	
	logo img { width: 78px; }
	.login logo img { width: 104px; }

	/* 소개페이지 */
	.about_container .txt_area h2 { margin-bottom: 18px; }
	.about_container .txt_area span { padding: 8px 18px; margin-bottom: 25px; font-size: 18px; }
	.about_container .txt_area p { margin-bottom: 28px; line-height: 27px; font-size: 18px; }
	.about_content01 .txt_area h2 { font-size: 36px; }
	.about_content02 .txt_area h2 { font-size: 32px; }
	.about_visual_area .visual_pc { box-shadow: 0px 2px 10px 3px rgba(214, 214, 214, 0.5); }
	.about_visual_area .visual_mobile { box-shadow: 0px 2px 10px 2px rgba(214, 214, 214, 0.5); }
	.about_btn_area a { font-size: 16px; }
	
	/* 나의 작물 정보 */
	.address > div { width: 100%; }
	.member_update .favoriteContainer { position: unset; margin-bottom: 12px; }

}



/* small Tablet */
@media screen and (max-width: 768px){
	
	i img { transition: none; }
	
	#container .contents { height: calc(100dvh - 50px); }
	
	.sub .wrapper { margin-top: 6px; margin-bottom: 30px; }
	.wrapper { padding: 0 20px; }
	
	.wh_box { padding: 16px; }
	
	/* 헤더 */
	#header { height: 50px; padding: 0 20px; }
	.btn_notify, .btn_mypage { width: 34px; height: 34px; }
	.btn_mypage i img, .btn_notify i img { width: 18px; }
	
	/* 사이드바 */
	.snb_container { height: calc(100% - 256px); }
	.snb_top { padding: 7px 20px; }
	.snb_inner { margin: 20px 20px 0; }
	.new_chat_btn { margin-bottom: 18px; padding: 15px; }
	.user_menu { margin: 20px; padding-top: 18px; }
	.user_menu li { margin-bottom: 16px; }
	.chat_history > ul > li { padding: 7px 9px; }
	.chat_history em { margin-bottom: 2px; }
	
	/* table */
	.thead_row { display: none; }
	.tbl01 { text-align: left; }
	
	/* 페이징 */
	.paging { margin-top: 18px; }
	
	/* 소개페이지 */
	.about_header { height: 50px; }
	.about_btn_area { margin-bottom: 40px; }
	.about_btn_area > div { gap: 10px; }
	.about_container .txt_area h2 { margin-bottom: 14px; }
	.about_content01 { padding: 50px 0 100px; }
	.about_content01 .txt_area h2 { font-size: 29px; }
	.about_content02 { padding: 50px 0 60px; }
	.about_content02 .txt_area h2 { font-size: 27px; }
	.about_content02 .txt_area h2:before { width: 36px; height: 36px; top: -13px; left: -25px; }
	.about_btn_area .download.btn i { font-size: 13px; }
	
	.cloud { padding-top: 9%; }
	.cloud01 { top: 8%; left: 6%; width: 17%; }
	.cloud02 { top: 22%; right: 5%; width: 16%; left: unset; }
	.cloud03 { top: 72%; left: 7%; width: 12%; }
	.cloud04 { display: none; }
	.cloud05 { top: 50%; width: 16%; right: 6%; }
	.cloud06 { width: 10%; top: 63%; right: 5%; }
	
	.function_area { gap: 20px; }
	.function_area li { padding: 26px; }
	.function_area li p { line-height: 25px; font-size: 17px; }
	.function_area li h3 { margin-bottom: 10px; font-size: 19px; }
	.function_area li i { width: 70px; margin-bottom: 16px; }
	.function_area li i img { width: 100%; }
	
	.about.footer .f_address { margin-bottom: 6px; }
	.about.footer { padding: 24px 0; }
	.about.footer .footer_inner { align-items: flex-start; flex-direction: column; gap: 18px; }
	.f_jntp_logo img { width: 150px; }
	
	/* 앱 다운로드 팝업 */
	.tooltip_header { margin-bottom: 10px; font-size: 18px; }
	.tooltip_body h4 { font-size: 17px; }
	.tooltip_body p { font-size: 16px; line-height: 22px; }
	.download_tooltip { top: 62px; left: 100%; width: 300%; padding: 11px 18px 14px; }
	.download_tooltip::after,
	.download_tooltip::before { left: 30%; }
	.download_tooltip::before { margin-top: -8px; border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 8px solid #d7d7d7; }
	.download_tooltip::after { margin-top: -8px; border-left: 7px solid transparent; border-right: 7px solid transparent; border-bottom: 7px solid #fff; }
		
	/* 회원가입 */
	.member_wrap label { font-size: 16px; }
	.member_wrap h2 { margin-bottom: 16px; font-size: 19px; }
	.member_wrap .agree_box { line-height: 20px; font-size: 14px; }
	.member_wrap .agree_box h3 { margin-bottom: 2px; font-size: 15px; }
	.member_wrap .agree_box h4 { margin-bottom: 1px; }
	
	/* 로그인 */
	.member_wrap .wh_box,
	.member_wrap form { width: 100%; }
	.login .wh_box { padding: 30px 36px; }
	.login .wh_box span { margin-bottom: 14px; font-size: 17px; }
	.login input_group { height: 40px; padding: 0 14px; font-size: 15px; }
	#container.login logo { margin-bottom: 18px; }
	.check_area { margin-top: 14px; font-size: 14px; }
	
	/* 마이페이지 */
	.point { margin-top: 0; }
	select, input, .member_update input, .member_update select { height: 40px; line-height: 40px; border-radius: 6px; }
	.member_update dl { flex-direction: column; gap: 6px; margin-bottom: 16px; }
	.member_update .email > div { width: 100%; }
	.member_update .email input { min-width: auto; width: calc(50% - 15px); }
	.member_update dd,
	.member_update #memberEmail,
	.member_update input,
	.member_update select { width: 100%; }
	.member_update label { width: 100%; margin-top: 0; }
	
	/* 채팅 첫화면 */
	.greeting h2 { margin-bottom: 30px; }
	.greeting .topic_wrap { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
	.greeting h2 span { margin-bottom: 10px; font-size: 26px; }
	.greeting h2 p { line-height: 38px; font-size: 32px; }
	.greeting .expert_message p { font-size: 29px; }
	.chat_wrap .chat_tit { display: none; }
	.chat_input { padding: 12px 14px 10px 14px; }
	.chat_input .chat_btn_area { margin-top: 10px; padding-top: 6px; }
	
	/* 채팅 */
	.chat_body { line-height: 26px; }
	.chat_body > .wrapper { padding-bottom: 20px; }
	.chat_wrap { padding-bottom: 20px; }
	.answer_bubble { margin-top: 20px; }
	.query_bubble { margin-top: 20px; }
	.query_bubble_inner { padding: 8px 16px; }
	.answer_bubble_inner { padding: 12px 16px 16px; }
	
	/* gpt 가이드 메시지 */
	.gpt_guide { gap: 6px; }
		
	/* 전문가 문의 리스트 */
	.sub_board.tbl_list .wh_box { padding: 2px 16px; }
	.sub_tit h1 { font-size: 23px; }
	.sub_tit { align-items: flex-end; }
	.sub_tit > div { align-items: flex-start; gap: 8px; flex-direction: column; }
	.qna_tbl .list_tit { width: 100%; padding: 8px 0 0 0; }
	.qna_tbl .list_date { display: block; width: 100%; padding-top: 6px; }
	.empty_area { padding: 20px 0; }
	.empty_area.type02 { padding: 24px 0; font-size: 17px; }
	.empty_area.type02 i { margin-right: 4px; }
	.empty_area.type02 i img { width: 18px; }
	
	/* 전문가 문의 상세 */
	.board_view img { max-width: 100%; width: 100%; }
	
	/* 전문가 문의 등록 */
	.sub_board_form .wh_box { padding: 20px; }
	.sub_board_form dl { flex-direction: column; gap: 8px; }
	.sub_board_form dl dt { margin-top: 0; width: 100%; }
	.sub_board_form textarea { padding: 10px 12px; }
	
	/* 공지사항 */
	.notice_tbl .list_num { width: auto; text-align: center; }
	.notice_tbl .list_date { display: block; width: 100%; padding-top: 8px; }
	.notice_tbl .list_tit { width: 100%; }
	.list_num:has(> em.primary) + .list_tit { width: calc(100% - 60px); }
	.notice_tbl .list_num > em:not(.primary) { display: none; }
	.notice_tbl .list_num .primary { width: 50px; margin-right: 6px; }
	 
	.tbl01 .tbody_row { display: block; height: auto; padding: 12px 0; }
	.sub_tit.search_tit { align-items: flex-start; flex-direction: column; gap: 10px; }
	
	/* 나의 작물 정보 */
	.crop_card_wrap { grid-template-columns: repeat(2, 1fr); }
	.address > div input { width: calc(100% - 68px); }
	
	/* 전남 농업 이슈 분석 */
	.grey_box { padding: 16px; }
	.tbl02 tr { padding: 12px 0; }
	.stit_wrap { margin-bottom: 10px; }
	.kywd_news .sub_tit > div { align-items: center; gap: 8px; flex-direction: unset; }
	.kywd_news h3 { font-size: 20px; }
	.kywd_news .contents .wrapper { padding: 14px 20px; }
	.kywd_news .news_link { align-items: flex-start; flex-direction: column; gap: 6px; }
	.kywd_news .wh_box { padding: 2px 16px; }
	.kywd_tbl .tbl01 .list_tit { padding: 0; }
	.kywd_tbl .tbl01 .list_tit,
	.kywd_tbl .list_cate,
	.kywd_tbl .list_date { width: 100%; }
}

/* Tablet */
@media screen and (max-width: 620px){
	
	/* 소개페이지 */
	.about_container .txt_area p br { display: none; }
	.about_content01 { padding: 40px 0 60px; }
	.about_visual_area { display: flex; justify-content: center; align-items: center; }
	.about_visual_area .visual_pc { display: none; }
	.about_visual_area .visual_mobile { position: unset; width: 55%; height: auto; aspect-ratio: 290 / 563; }
	.about_visual_area .visual_mobile:before { top: unset; left: 5px; bottom: -4%; width: 16%; padding-top: 30%; transform: scaleX(-1); }
	.about_visual_area .visual_mobile:after { right: 0; bottom: -5%; display: block; width: 15%; padding-top: 41%; }
	.about_btn_area { flex-direction: column; margin-bottom: 30px; gap: 10px; }
	.about_btn_area > div { width: 100%; justify-content: center; }
	.about_btn_area a { padding: 11px 18px; text-align: center; border-radius: 7px; }
	.about_btn_area .start.btn { padding: 12px 24px; }
	.about_btn_area .download.btn.app { width: 159px; }
	.about_btn_area .download.btn.manual { width: 135px; }
	.about_btn_area .start.btn { width: 302px; }
	.about_btn_area .start.btn:after { top: -9px; width: 43px; }
	
	/* 앱 다운로드 팝업 */
	.download_tooltip { width: 280%; }
	.tooltip_message { font-size: 15px; }
	
	/* 나의 작물 정보 */
	.crop_card_wrap { grid-template-columns: 1fr; }
	
	/* 전남 농업 이슈 분석 */
	.kywd_anls .sub_tit > div,
	.kywd_anls .sub_tit > div form { width: 100% }
	.sub_tit .top_date { gap: 3px; }
	.sub_tit .top_date input { width: calc(50% - 38px); }
	.key_rank { grid-template-columns: 1fr; }
	.key_rank li:nth-child(1) { order: unset; }
	.key_rank li:nth-child(2) { order: unset; }
	.key_rank li:nth-child(3) { order: unset; }
	.key_rank li:nth-child(4) { order: unset; }
	.key_rank li:nth-child(5) { order: unset; }
	.key_rank li:nth-child(6) { order: unset; }
	.key_rank li:nth-child(7) { order: unset; }
	.key_rank li:nth-child(8) { order: unset; }
	.key_rank li:nth-child(9) { order: unset; }
	.key_rank li:nth-child(10) { order: unset; }
	.tbl02 tr td a { gap: 2px; align-items: flex-start; flex-direction: column; }
	
	.kywd_news .wh_box { padding: 2px 14px; }
	
}


/* Mobile */
@media screen and (max-width: 480px){
	
	logo img { width: 72px; }
	#container .login logo { margin-bottom: 16px; }
	.login logo img { width: 78px; }
	
	body { font-size: 16px; }
	.wh_box { padding: 14px; border-radius: 6px; }
	
	/* 기본 인풋 */
	select { padding: 0 30px 0 12px; background-position: right 4px center; background-size: 30px; }
	input[type="text"] { padding: 0 12px; }
	input[type="date"] { padding: 0 12px; background-position: right 12px center; background-size: 18px; }
	textarea { line-height: 19px; font-size: 15px; }
	
	/* button */
	.btn.lg { padding: 0 16px; height: 40px; font-size: 17px; border-radius: 6px; }
	.btn.mid { padding: 0 10px; height: 32px; font-size: 16px; border-radius: 5px; }
	.btn.sm { padding: 0 8px; height: 28px; font-size: 15px; border-radius: 4px; }
	
	/* table */
	.tbl01 .tbody_row { padding: 10px 0; }
	.tbl01 .list_tit a { font-size: 17px; }
	.tbl01 .list_date { font-size: 15px; }
	
	/* 소개페이지 */
	.about_header { height: 44px; }
	.about_header logo { font-size: 17px; }
	.about_container .txt_area p { width: 90%; margin-bottom: 22px; line-height: 22px; font-size: 16px; }
	.about_container .txt_area span { padding: 7px 14px; margin-bottom: 14px; font-size: 15px; font-weight: 500; font-family: 'Pretendard'; }
	.about_content01 .txt_area h2 { font-size: 23px; }
	.about_content02 { padding: 40px 0 50px; }
	.about_content02 .txt_area h2 { font-size: 22px; }
	.about_content02 .txt_area h2:before { width: 30px; height: 30px; top: -11px; left: -16px; }
	.about_visual_area .visual_mobile { width: 63%; }
	.about_visual_area .visual_mobile:before { bottom: -38px; width: 18%; padding-top: 36%; }
	.about_visual_area .visual_mobile:after { bottom: -42px; width: 19%; padding-top: 51%; }
	.cloud01 { top: 30%; }
	.function_area { gap: 16px; }
	.function_area li i { width: 60px; }
	.function_area li { border-radius: 7px; padding: 20px; }
	.function_area li h3 { margin-bottom: 8px; font-size: 17px; }
	.function_area li h3::after { height: 6px; }
	.function_area li p { line-height: 22px; font-size: 15px; }
	.about.footer { padding: 20px 0; }
	.about.footer .footer_inner { gap: 12px; }
	.about.footer .f_address { font-size: 15px; }
	.about.footer .f_copyright { font-size: 14px; }
	.f_jntp_logo img { width: 130px; }
	
	/* 앱 다운로드 팝업 */
	.download_tooltip { width: 220%; top: 56px; left: 95%; padding: 10px 16px 12px; border-radius: 7px; }
	.tooltip_header { margin-bottom: 8px; font-size: 17px; }
	.tooltip_body h4 { margin-bottom: 3px; font-size: 16px; }
	.tooltip_body { padding: 12px; border-radius: 5px; }
	.tooltip_body p { font-size: 15px; line-height: 20px; }
	.tooltip_body i { font-size: 14px; }
	.tooltip_body .fa-angle-right { margin: 0 6px; }
	.tooltip_note { gap: 3px; font-size: 14px; }
	.android_area { margin-bottom: 8px; padding-bottom: 7px; }
	
	/* 아이디 비밀번호 찾기 */
	/* .check_tab li { padding: 10px 0; font-size: 16px; } */
	
	/* 로그인 */
	.login strong { margin-bottom: 12px; font-size: 17px; }
	#container.login { height: calc(100dvh - 221px); }
	.login .wh_box { padding: 26px 30px; }
	.login .wh_box span { margin-bottom: 12px; font-size: 16px; }
    .login button { margin-top: 16px; padding: 12px 0; font-size: 17px; }
    .login input { height: 40px; }
    .login .pass_input { margin-top: 10px; }
    .login input { font-size: 16px; }
    .login .check_area { margin-top: 14px; font-size: 15px; }
    .login .join_area { margin-top: 20px; font-size: 16px; }
    .pass_input .icon_view i { right: 12px; font-size: 15px; }
    .pass_input input { padding: 0 40px 0 12px; }
    
    /* 회원가입 */
    .member_wrap h2 { margin-bottom: 12px; }
    .member_wrap .agree_box { max-height: 190px; padding: 10px; }
    .member_wrap .personal_info_box { margin-bottom: 12px; }
    .member_wrap.contents section  { padding: 30px 20px; }
    /* .member_wrap.contents .member_wrap_inner { margin-top: 58px; } */
    .member_wrap .input_group { margin-bottom: 10px; }
    .member_wrap label { margin-bottom: 6px; font-size: 15px; }
    .member_wrap .id_check { gap: 6px; }
    .member_wrap .wh_box { padding: 16px; }
	.member_wrap .form_btnarea { margin-top: 18px; gap: 8px; }
	.member_wrap .join_finish b { margin-top: 16px; color: #555; font-size: 17px; }
	.member_wrap .join_finish p { margin: 6px 0 10px; font-size: 16px;}
	.member_wrap .join_finish span { width: 48px; height: 48px; }
	.member_wrap .join_finish span i { font-size: 24px; }
	.member_wrap .alert_error { margin-top: 6px; font-size: 14px; }
	.point { margin-top: 2px; font-size: 15px; }
	
	/* 헤더 */
	#header { height: 46px; padding: 0 16px; }
	.util { gap: 8px; }
	.header_left { gap: 10px; }
	.btn_notify, .btn_mypage { width: 30px; height: 30px; }
	.btn_mypage i img, .btn_notify i img { width: 16px; }
	.btn_notify_wrap .notify_num { padding: 2px 5px; }
	.chat_login span { font-size: 17px; }
	.chat_login i { display: none; }
	.chat_login i img { width: 22px; }
	.btn_hide i img { width: 19px; }
	
	/* 사이드바 */
	.snb_container { height: calc(100% - 229px); }
	.snb_inner { margin: 16px 16px 0; }
	.snb_top { padding: 6px 16px; }
	.snb_top i { font-size: 17px; }
	.snb_menu li span { font-size: 17px; }
	.snb_menu li i { margin-right: 6px; }
	.snb_menu li i img { width: 18px; }
	.new_chat_btn { margin-bottom: 16px; padding: 12px; font-size: 17px; }
	.new_chat_btn i { font-size: 17px; }
	
	.chat_history_wrap { margin: 10px -7px 0 -7px; }
	.chat_history em { margin: 0 0 4px 8px; font-size: 15px; }
	.chat_history > ul > li { padding: 4px 8px; border-radius: 5px; }
	.chat_history > ul > li > div > i { display: none; margin-right: 6px; }
	.chat_history > ul > li > div > i img { width: 14px; }
	.chat_history > ul > li span { padding-top: 3px; padding-left: 20px; font-size: 15px; line-height: 21px; }
	.user_menu { margin: 16px 16px 20px; padding-top: 16px; }
	.user_menu li { margin-bottom: 13px; }
	.user_menu li a { font-size: 16px; }
	
	.more_btn { display: block; }
	.more_btn i img { width: 16px; }
	
	/* 레이아웃 */
	.wrapper { padding: 0 16px; }
	#container .contents { height: calc(100dvh - 46px); }
	
	/* 채팅 첫화면 */
	.greeting logo { margin-bottom: 14px; font-size: 22px; }
	.greeting .topic_wrap { gap: 10px; }
	.greeting .topic_wrap li a { padding: 12px 0; font-size: 18px; }
	.greeting h2 { margin-bottom: 26px; }
	.greeting h2 span { margin-bottom: 7px; font-size: 20px; }
	.greeting h2 p { line-height: 30px; font-size: 24px; }
	.greeting .expert_message p { font-size: 22px; }
	
	/* 채팅화면 */
	.chat_body { line-height: 24px; font-size: 16px; }
	.chat_body > .wrapper { padding-bottom: 20px; }
	.chat_wrap .chat_tit { line-height: 28px; }
	.chat_wrap .chat_input .del_btn i { margin: 2px 0px 0px 0px; }
	.answer_bubble_inner { padding: 10px 12px 12px; border-radius: 2px 10px 10px 10px; }
	.query_bubble_inner { padding: 8px 12px; border-radius: 10px 2px 10px 10px; }
	.answer_bubble_inner h3,
	.answer_bubble_inner h2 { margin-bottom: 4px; font-size: 17px; }
	.answer_bubble_inner p { margin: 5px 0; }
	.answer_bubble_inner p strong { font-size: 17px; }
	.answer_bubble_inner ol, .chat_wrap .answer_bubble_inner ul { padding-inline-start: 20px; }
	.answer_bubble_inner table th { min-width: 80px; }
	.answer_bubble_inner table td { font-size: 15px; line-height: 20px; }
	
	.recommend_question_item p { padding: 6px 12px; line-height: 1.2; }
	.answer_bubble_inner.loading { padding: 8px 14px 10px; }
	.loading span:nth-child(2) { margin: 0px 6px; }
	
	/* 좋아요, 싫어요 버튼 */
	.feedback_area { margin-top: 12px; padding-top: 10px; }
	.feedback_area .disflex { gap: 8px; }
	.feedback_area button { width: 27px; height: 27px; }
	.feedback_area button i img { width: 15px; }
	.feedback_btn_wrap { margin-top: 14px; padding-top: 14px; }
	.feedback_btn { font-size: 17px; }
	.feedback_btn i { font-size: 16px; }
	.feedback_area .bad_btn i img { margin-bottom: 0; }
	.feedback_area .copy_btn i img { height: 14px; margin-bottom: 1px; }
	.feedback_area .tts_btn i img { width: 17px; }
	
	/* 채팅인풋 */
	.chat_input { padding: 12px 12px 8px 12px; border-radius: 7px; }
	.chat_input .input_content { flex-direction: column; }
	.chat_input textarea { max-height: 120px; font-size: 16px; }
	.chat_input .chat_btn_wrap { gap: 12px; }
	.chat_input .chat_btn_area { margin-top: 6px; padding-top: 6px; }
	.chat_input .chat_btn_area button i img { width: 19px; }
	.chat_input .chat_btn_area .pause { width: 28px; height: 27px; }
	.chat_input .chat_btn_area .pause i { width: 10px; height: 11px; }
	.chat_submit_btn { padding: 6px 8px; }
	.chat_submit_btn i { font-size: 16px; }
	
	/* 추천질문 */
	.recommend_area_header i img { width: 12px; }
	
	/* 첨부파일 */
	.filebox a { width: 230px; gap: 9px; padding: 8px 10px; border-radius: 8px; }
	.filebox a div { padding: 2px 7px 4px 7px; }
	.filebox a span { font-size: 15px; }
	.filebox i img { width: 17px; }
	.filebox .loading-spinner { width: 18px !important; height: 18px !important; }
	
	/* 인풋 첨부파일 */
	.chat_input .input_file_wrap::after { right: -14px; }
	.chat_input .input_file_wrap .filebox { margin-bottom: 12px; }
	.filebox .spinner-container { padding: 2px 1px 2px 0px; }
	
	/* 출처 */
	.ref_area { margin-top: 8px; gap: 4px; }
	.ref_area strong, .ref_area li a { font-size: 15px; }
	.ref_area li .ref_num { margin: 0 4px 0 0; }
	.ref_num { margin: 0px 7px 0 0; }
	.ref_num:first-of-type { margin-left: 8px; }
	
	/* gpt 가이드 메시지 */
	.gpt_guide { line-height: 22px; }
	.gpt_guide span { display: none; }
	
	/* 드롭다운 */
	.list_util { width: 134px; top: 35px; left: -106px; border-radius: 6px; }
	.list_util li a { padding: 0 12px; line-height: 38px; font-size: 15px; }
	.list_util li i { margin-right: 5px; }
	.list_util .util_mypage i { margin-right: 6px; }
	.list_util li i img { vertical-align: text-top; }
	
	/* 마이페이지 드롭다운 */
	.util_mypage i { margin-right: 5px; }
	.list_util li i img { width: 16px; }
	.list_util .util_logout i img,
	.list_util .util_crop i img,
	.list_util .util_mngr i img { width: 17px; }
	
	/* 대화내역 더보기 드롭다운 */
	.more_util { width: 103px; }
	.more_util li a { padding: 0 10px; line-height: 38px; }
	
	/* 전문가 문의 리스트 */
	.sub_board.tbl_list .wh_box { padding: 2px 14px; }
	.sub .wrapper { margin-top: 8px; margin-bottom: 20px; }
	.sub_board.detail .wh_box { padding: 10px; }
	.sub_tit { margin-bottom: 10px; }
	.sub_tit > div { gap: 5px; }
	.sub_tit h1 { font-size: 20px; }
	.sub_tit p { gap: 6px; font-size: 16px; }
	.sub_tit.search_tit { gap: 8px; }
	.status { padding: 4px 10px; font-size: 15px; }
	.prev_count { padding: 3px 6px; margin-left: 8px; font-size: 14px; border-radius: 4px; }
	.empty_area { font-size: 16px; }
	
	/* 전문가 문의 상세 */
	.sub_board.detail .titbox { padding: 10px; }
	.view_head h3 { margin-bottom: 6px; font-size: 17px; }
	.view_info { gap: 8px; font-size: 15px; }
	.view_info span:after { margin-left: 8px; }
	.board_view { min-height: 220px; padding: 14px 4px 4px; line-height: 20px; }
	.board_view img { margin-top: 12px; }
	.detail_file { padding-top: 8px; margin-top: 6px; font-size: 15px; }
	.detail_file dt { display: none; }
	.detail_file dd { gap: 5px 10px; }
	.detail_file dd span a { font-size: 15px; }
	.ico_attach { margin-right: 4px; }
	.ico_attach img { width: 14px; }
	
	.expert_reply { padding: 10px; }
	.expert_reply h4 { font-size: 16px; }
	.expert_reply .detail_file { margin-top: 5px; }
	.reply_tit { gap: 6px; }
	.reply_tit i img { width: 12px; }
	.reply_inner { margin: 4px 0 0 18px; }
	.reply_txt { margin-top: 4px; line-height: 20px; }
	
	.sub_btn_area { gap: 6px; margin-top: 12px; }
	.prev_btn { margin-top: 12px; padding: 5px 10px; font-size: 15px; }
	.prev_btn i { margin-left: 5px; font-size: 13px; }
	.prev_view .wh_box { margin-top: 10px; }
	
	/* 전문가 문의 등록 */
	.sub_board_form .wh_box { padding: 16px; }
	.sub_board_form dl { margin-bottom: 14px; }
	.sub_board_form dl dt { font-size: 16px; }
	.sub_board_form textarea { padding: 10px; }
	.drop_area { padding: 16px; border-radius: 6px; }
	.drop_area p { margin-bottom: 6px; font-size: 14px; }
	.file_detail_form:has(p) { padding: 6px 12px; }
	.file_detail_form .fa-xmark { padding: 2px 3px; font-size: 12px; vertical-align: text-bottom; }
	.file_detail_form p { line-height: 26px; }
	.file_detail_form p a { font-size: 15px; }
	
	/* 공지사항 */
	.sub_tit.search_tit form { width: 100%; }
	.set_search { gap: 6px; }
	.set_search .btn.mid { height: 35px; }
	.set_search input { width: calc(100% - 60px); height: 36px; line-height: 36px; }
	.tbl01 .list_file img { width: 14px; }
	.notice_tbl .list_num .primary { width: 40px; margin-right: 4px; padding: 2px 6px; font-size: 15px; }
	.list_num:has(> em.primary) + .list_tit { width: calc(100% - 52px); }
	.notice_tbl .list_date { padding-top: 6px; }
	
	/* 페이징 */
	.paging { margin-top: 12px; }
	.paging .num { gap: 10px; }
	.paging .num .num { gap: 4px; }
	.paging a { font-size: 16px; }
	.paging .pageNoClass { width: 23px; padding: 3px 0px; font-size: 15px; }
	
	/* 마이페이지 */
    .member_update input { min-width: 100%; }
    input,
    select,
    .member_update input,
    .member_update select { height: 36px; line-height: 36px; font-size: 15px; }
    .member_update label { font-size: 15px; }
    .member_update dl { margin-bottom: 10px; }
    .member_update input[type="date"] { width: calc(100% - 16px); min-width: calc(100% - 16px); }
    .address button { margin-left: 2px; }
	
	/* 나의 작물 정보 */
	.crop_card_wrap { gap: 12px; } 
	.crop_card { padding: 14px; }
	.crop_card dl { margin-bottom: 10px; }
	.crop_card dt { min-width: 60px; }
	.crop_title { gap: 12px; margin-bottom: 12px; padding-bottom: 10px; }
	.crop_title span { font-size: 17px; }
	.crop_title i { width: 34px; height: 34px; }
	.crop_title i img { width: 22px; height: 22px; }
	
	.crop_select, .address { gap: 8px; }
	.address > div input { width: calc(100% - 58px); min-width: auto; }
	
	.crop_card.representative .rep_badge { padding: 7px 9px; font-size: 15px; }
	
	.modify_radio_area { line-height: 20px; }
	.modify_radio_area dd label { width: 80px; }
	.member_update input[type="radio"] + label span { margin-right: 5px; }
	
	/* 전남 농업 이슈 분석 */
	.term_selector span { margin-right: 8px; }
	.kywd_anls .sub_tit > div { gap: 7px; }
	.sub_tit .top_date input { width: calc(50% - 32px); height: 34px; line-height: 34px; background-size: 16px; font-size: 14px; }
	.sub_tit .top_date .btn.sm { height: 32px; line-height: 32px; white-space: nowrap; }
	.term_buttons .term { padding: 5px 13px; font-size: 15px; }
	.stit_wrap { margin-bottom: 8px; }
	.stit_wrap h3 { font-size: 18px; }
	.topten { font-size: 14px; }
	.grey_box { padding: 13px; }
	.key_rank a .rank_num { width: 22px; height: 22px; font-size: 15px; }
	.key_rank a { padding: 6px 12px 6px 8px; font-size: 17px; }
	.key_rank a i { margin-left: 6px; }
	.key_prog p { padding: 6px; font-size: 16px; }
	.tbl02 tr { padding: 12px 0; }
	.tbl02 tr td a p { line-height: 30px; font-size: 16px; }
	.category { padding: 4px 10px; }
	.stit_wrap p,
	.category,
	.tbl02 tr td a em,
	.issue_more_btn { font-size: 15px; }
	.kywd_news .contents .wrapper { padding: 14px 16px; }

}