@charset "UTF-8";

/* common */
:root {
  --bs-primary: var(--green);
}
a {
  text-decoration: none;
}
ul {
  margin-bottom: 0;
  padding-left: 0;
}
.btn {
  line-height: 1;
}
p {
  margin-bottom: 0;
}
/* LAYOUT */

#container {
  width: 100%;
  height: calc(100vh - 60px);
  position: relative;
}
#wrap {
  min-width: 320px;
  overflow: hidden;
  height: 100dvh; /*height: 100vh;*/
}
.map {
  width: 100%;
  height: 100%;
  margin-top: 60px; /*background: url(/dad_user/images/site/map/map_bg.png)no-repeat center;*/
}
.mapScreenshot {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0; /*background: url(/dad_user/images/site/map/map_bg.png)no-repeat center;*/
}
.map_copyright {
  position: fixed;
  right: 5px;
  bottom: 5px;
  color: #fff;
  font-size: 1.6rem;
}

/* HEADER */

#header {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px;
  background: #fff;
  min-width: 320px;
}
#header .left {
  display: flex;
  align-items: center;
  gap: 30px;
}
#header .logo {
  display: block;
  width: 130px;
  height: 37px;
  background: url(/dad_user/images/site/map/logo.svg) no-repeat center;
}
[data-theme="dark"] #header .logo {
  filter: brightness(0) invert(1);
}
#header .search_wrap {
  position: relative;
  width: 280px;
  display: flex;
  align-items: center;
  height: 44px;
  border-radius: 5px;
  border: 1px solid var(--green);
  background: #f2f1f6;
  transition: 0.3s;
  flex: 1;
}
#header .search_wrap .search_btn {
  width: 44px;
  height: 44px;
  background: url(/dad_user/images/site/map/ico_search.svg) no-repeat center;
}
#header .search_wrap input {
  width: 100%;
  border: 0;
  padding-left: 12px;
  background: transparent;
  height: 100%;
  flex: 1;
  font-size: 2rem;
}
.search_del_btn {
  display: none;
  position: relative;
  width: 20px;
  height: 20px;
  background: url(/dad_user/images/site/map/ico_search_del.png) no-repeat center;
}
.search_del_btn.show {
  display: block;
}
#header .search_wrap.active {
  background: #fff;
  border-color: var(--green);
}

#header .menu ul {
  display: flex;
  align-items: center;
  gap: 18px;
}
.menu ul li a {
  position: relative;
  padding: 13px 15px;
  border-radius: 5px;
  color: var(--black1);
  font-weight: 500;
  padding-left: 50px;
  font-size: 1.8rem;
  white-space: nowrap;
  line-height: 1;
}
.menu ul li.on a,
.menu ul li a:hover {
  background: var(--green);
  color: #fff;
  transition: 0.2s;
}
[data-theme="dark"] .menu ul li a {
  color: #f2f2f2;
}
[data-theme="dark"] .menu ul li a::after {
  filter: brightness(0) invert(1);
}
[data-theme="dark"] .menu ul li.on a,
[data-theme="dark"] .menu ul li a:hover {
  color: #fff;
}
.menu ul li a::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-repeat: no-repeat;
  background-position: center;
  transition: 0.2s;
}
.menu ul .item1 a::after {
  background-image: url(/dad_user/images/site/map/ico_menu01.svg);
}
.menu ul .item1.on a::after,
.menu ul .item1 a:hover::after {
  background-image: url(/dad_user/images/site/map/ico_menu01_on.svg);
}
.menu ul .item2 a::after {
  background-image: url(/dad_user/images/site/map/ico_menu02.svg);
}
.menu ul .item2.on a::after,
.menu ul .item2 a:hover::after {
  background-image: url(/dad_user/images/site/map/ico_menu02_on.svg);
}
.menu ul .item3 a::after {
  background-image: url(/dad_user/images/site/map/ico_menu03.svg);
}
.menu ul .item3.on a::after,
.menu ul .item3 a:hover::after {
  background-image: url(/dad_user/images/site/map/ico_menu03_on.svg);
}
.menu ul .item4 a::after {
  background-image: url(/dad_user/images/site/map/ico_menu04.svg);
}
.menu ul .item4.on a::after,
.menu ul .item4 a:hover::after {
  background-image: url(/dad_user/images/site/map/ico_menu04_on.svg);
}
.menu ul .item5 a::after {
  background-image: url(/dad_user/images/site/map/ico_menu05.svg);
}
.menu ul .item5.on a::after,
.menu ul .item .bi {
  position: absolute;
  top: 10px;
  left: 14px;
  font-size: 24px;
}

#header .right {
  display: flex;
  align-items: center;
  gap: 30px;
}
.login_btn {
  padding: 10px 15px 10px 38px;
  border-radius: 5px;
  border: 1px solid var(--green);
  font-size: 1.4rem;
  background-position: center left 15px;
  background-repeat: no-repeat;
  background-color: #f6f6f6;
  background-image: url(/dad_user/images/site/map/ico_login.svg);
  font-weight: 500;
  white-space: nowrap;
}
.login_btn.logout {
  background-image: url(/dad_user/images/site/map/ico_logout.svg);
}
#header .kofpi_logo {
  width: 180px;
  height: 43px;
  background: url(/dad_user/images/site/map/kofpi_logo.svg) no-repeat center;
  background-size : cover;
}

#header .menu_bar {
  position: absolute;
  width: 24px;
  height: 24px;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  background: url(/dad_user/images/site/map/menu_bar.svg) no-repeat center;
}
#header .hd_mo_tit {
  font-size: 1.6rem;
  border-left: 1px solid #d8dade;
  padding-left: 8px;
  margin-left: 10px;
  font-weight: 600;
}
.mo_menu {
  display: none;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 9999;
  transition: 0.3s;
}
.mo_menu::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: all 0.3s;
}
.mo_menu.show {
  opacity: 1;
  visibility: visible;
  z-index: 9999;
}
.mo_menu.show::before {
  opacity: 1;
}
.mo_menu .menu_wrap {
  position: absolute;
  right: -100%;
  top: 0;
  width: calc(100% - 100px);
  min-width: 260px;
  max-width: 600px;
  height: 100%;
  background: #fff;
  padding: 5px;
  transition: 0.5s;
}
.mo_menu.show .menu_wrap {
  right: 0;
}
/* 로그인 버튼 없애면서 X버튼 오른쪽으로 붙이기 .mo_menu .top{display: flex; align-items: center; justify-content: space-between; padding: 10px 12px;}*/
.mo_menu .top {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 10px 12px;
}
.mo_menu .menu_close {
  width: 20px;
  height: 20px;
  background: url(/dad_user/images/site/map/ico_pop_close.svg) no-repeat center;
}
.mo_menu .menu {
  margin-top: 5px;
}
.print_btn {
  position: relative;
  padding: 12px 15px 12px 43px;
  border-radius: 50px;
  color: var(--black1);
  font-weight: 500;
  border: 1px solid var(--green);
  font-size: 1.4rem;
  white-space: nowrap;
  line-height: 1;
  background: #f6f6f6;
}
.print_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background: url(/dad_user/images/site/map/ico_menu05.svg) no-repeat center;
}
.analyze_pop .pop_head .util .print_btn::after {
  display: none;
}

/* TOP WRAP */

.top_wrap {
  position: absolute;
  right: 20px;
  top: 20px;
  display: flex;
  align-items: center;
  gap: 15px;
}
.top_wrap .btn {
  border-radius: 5px;
  font-size: 1.6rem;
  font-weight: 600;
  z-index: 10;
  border: 0;
}
[data-theme="dark"] .top_wrap .btn {
  background: #2a2a2a;
  color: #eaeaea;
  border: 1px solid #444;
}
[data-theme="dark"] .top_wrap .btn.theme-toggle {
  border-color: #555;
}
[data-theme="dark"] .top_wrap .btn.theme-toggle .ico {
  filter: brightness(1.2);
}
[data-theme="dark"] .top_wrap .btn.theme-toggle.on {
  background: var(--green);
  border-color: var(--green);
  color: #fff;
}
[data-theme="dark"] .top_wrap .btn span {
  color: var(--dark-text-primary);
}
.top_wrap .btn.theme-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  background: #fff;
  border: 1px solid #d8dade;
  color: #454545;
}
.top_wrap .btn.theme-toggle .ico {
  width: 16px;
  height: 16px;
  display: inline-block;
}
.top_wrap .btn.theme-toggle.on {
  background: var(--green);
  color: #fff;
  border-color: var(--green);
}
.top_wrap .btn.theme-toggle.on .ico {
  filter: brightness(0) invert(1);
}
.top_wrap .btn:focus {
  outline-color: red;
  outline-offset: -2px;
}
.top_wrap .toggle_btn_wrap {
  display: flex;
  padding: 2px;
  border-radius: 5px;
  background: #fff;
  z-index: 10;
}
.top_wrap .toggle_btn_wrap .btn {
  padding: 5px 16px;
  color: #787878;
}
.top_wrap .toggle_btn_wrap .btn.active {
  color: #fff;
  background: var(--blue);
}
.top_wrap > .btn {
  padding: 2px;
}
.top_wrap > .btn > span {
  display: block;
  border-radius: 5px;
  padding: 5px 12px;
}
.top_wrap .map_cadastral {
  background: #21396c;
}
.top_wrap .map_cadastral span {
  background: #fff;
  color: #21396c;
}
.top_wrap .map_cadastral.on {
  background: #fff;
}
.top_wrap .map_cadastral.on span {
  color: #fff;
  background: #21396c;
}
.top_wrap .map_list {
  background: var(--green);
}
.top_wrap .map_list span {
  background: #fff;
  color: var(--green);
}
.top_wrap .map_list.on {
  background: #fff;
}
.top_wrap .map_list.on span {
  color: #fff;
  background: var(--green);
}

/* RIGHT WRAP */

a:focus,
button:focus {
  outline: 2px dashed #000;
}

.right_wrap {
  position: absolute;
  top: 72px;
  right: 20px;
  display: flex;
  flex-direction: column;
}
.right_btn_wrap .btn_wrap {
  margin-bottom: 8px;
  border-radius: 5px;
  border: 1px solid #d8dade;
  overflow: hidden;
}
.right_btn_wrap .btn {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 48px;
  height: 50px;
  background: #fff;
  border-bottom: 1px solid #d8dade;
  font-size: 1.1rem;
  z-index: 10;
  padding: 0;
  border-radius: 0;
}
.right_btn_wrap .btn.theme-toggle {
  gap: 2px;
}
.right_btn_wrap .btn.theme-toggle .label {
  font-size: 1.1rem;
  line-height: 1.3;
  text-align: center;
}
.right_btn_wrap .btn:focus {
  outline-offset: -2px;
}
.right_btn_wrap .btn:last-child {
  border-bottom: 0;
}
.right_btn_wrap .btn.on {
  background-color: var(--green);
  color: #fff;
}
[data-theme="dark"] .right_btn_wrap .btn {
  background: #2a2a2a;
  color: #eaeaea;
  border-color: #444;
}
[data-theme="dark"] .right_btn_wrap .btn.on {
  background-color: var(--green);
  color: #fff;
}
[data-theme="dark"] .right_btn_wrap .btn .ico {
  filter: brightness(1.15);
}
.right_btn_wrap .btn .ico {
  width: 20px;
  height: 20px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.right_btn_wrap .bookmark .ico {
  background-image: url(/dad_user/images/site/map/ico_bookmark.svg);
}
.right_btn_wrap .bookmark.on .ico {
  background-image: url(/dad_user/images/site/map/ico_bookmarkBtn_on.svg);
}
.right_btn_wrap .distance .ico {
  background-image: url(/dad_user/images/site/map/ico_distance.svg);
}
.right_btn_wrap .distance.on .ico {
  background-image: url(/dad_user/images/site/map/ico_distance_on.svg);
}
.right_btn_wrap .area .ico {
  background-image: url(/dad_user/images/site/map/ico_area.svg);
}
.right_btn_wrap .area.on .ico {
  background-image: url(/dad_user/images/site/map/ico_area_on.svg);
}
.right_btn_wrap .slope .ico {
  background-image: url(/dad_user/images/site/map/ico_slope.svg);
}
.right_btn_wrap .slope.on .ico {
  background-image: url(/dad_user/images/site/map/ico_slope_on.svg);
}
.right_btn_wrap .magnifier .ico {
  background-image: url(/dad_user/images/site/map/ico_search.svg);
}
.right_btn_wrap .magnifier.on .ico {
  background-image: url(/dad_user/images/site/map/ico_search.svg);
  filter: brightness(0) invert(1);
}
.right_btn_wrap .location {
  border-radius: 5px;
  width: 100%;
  border: 1px solid #d8dade;
  background: #fff url(/dad_user/images/site/map/ico_location.svg) no-repeat
  center;
}

.right_btn_wrap .theme-toggle .ico {
  background-image: url(/dad_user/images/site/map/lightbulb.svg);
}

.dark-theme .right_btn_wrap .theme-toggle .ico {
  filter : invert(1);
}

.map_list_wrap {
  display: none;
  position: absolute;
  right: 90px;
  top: 0;
  width: 250px;
  overflow: hidden;
  padding: 0 8px;
  border-radius: 5px;
  z-index: 11;
}
.map_list_wrap.show {
  display: block;
}
.map_list_wrap .top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  padding: 8px 15px;
  background: var(--green);
  border-radius: 5px 5px 0 0;
}
.map_list_wrap .top strong {
  position: relative;
  font-size: 1.4rem;
  font-weight: 600;
  padding-right: 26px;
}
.map_list_wrap .top strong::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 15px;
  height: 15px;
  background: url(/dad_user/images/site/map/ico_list.svg) no-repeat center;
}
.map_list_wrap .list_close {
  width: 13px;
  height: 13px;
  background: url(/dad_user/images/site/map/ico_close.svg) no-repeat center;
}

.map_list_wrap .ml_cont {
  background: #fff;
  border-radius: 0 0 5px 5px;
  padding: 15px;
  max-height: 56vh; /*max-height: 531px;*/
  overflow-y: auto;
}
.map_list_wrap .map_list.dep1 > li {
  margin-bottom: 5px;
}
.map_list_wrap .ml_cont .tit {
  display: flex;
  gap: 6px;
}
.map_list_wrap .map_list .more_btn {
  position: relative;
  width: 18px;
  height: 18px;
  margin-top: 1px;
  border-radius: 50%;
  background: var(--green);
}
.map_list_wrap .map_list .more_btn::before,
.map_list_wrap .map_list .more_btn::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
}
.map_list_wrap .map_list .more_btn::before {
  width: 10px;
  height: 2px;
}
.map_list_wrap .map_list .more_btn::after {
  width: 2px;
  height: 10px;
}
.map_list_wrap .map_list .more_btn.active::after {
  display: none;
}
.map_list_wrap .map_list .tit_wrap {
  padding-bottom: 5px;
}
.map_list_wrap .map_list.dep2 {
  display: none;
  margin-top: 5px;
  padding-left: 15px;
}
.map_list_wrap .map_list.dep3 {
  display: none;
  padding-left: 15px;
}
.map_list_wrap .map_list.dep4 {
  display: none;
  padding-left: 10px;
}
.map_list_wrap .map_list.color {
  padding-left: 25px;
  margin-bottom: 10px;
}
.map_list_wrap .map_list.color li {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  font-size: 12px;
  line-height: 1.2;
}
.map_list_wrap .map_list .co_box {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-right: 8px;
}
.map_list_wrap .map_list .img_box {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 8px;
}
.co_box.border {
  border: 1px solid #000;
}

.map_list_wrap .ui-slider {
  max-width: 100%;
  margin: 3px 3px 3px 25px;
  height: 1rem;
  border-radius: 1rem;
  border: 0;
  background: #d9d9d9;
}
.map_list_wrap .ui-slider .ui-slider-range {
  background: var(--blue);
  border-radius: 1rem;
}
.map_list_wrap .ui-slider-horizontal .ui-slider-handle {
  top: -3px;
  width: 16px;
  height: 16px;
  background: #fff;
  border-radius: 50%;
  border: 0;
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.25);
}

.map_list_wrap .chk {
  font-size: 13px;
  color: #454545;
  line-height: 1.3;
  width: calc(100% - 24px);
}

.ol-zoom {
  width: 48px;
  height: 290px;
  padding: 0;
  right: 20px;
  top: 385px; /* 285 + 50 + theme toggle */
  left: unset;
  background: url(/dad_user/images/site/map/zoom_bg.png) no-repeat center;
}
.ol-zoomslider {
  width: 10px;
  top: 417px; /* 317 + 50 + theme toggle */
  left: unset;
  right: 38px;
  background-color: #abbcc6;
  border-radius: 0;
  height: 225px;
  padding: 0;
}
.ol-zoom .ol-zoom-in {
  border-bottom-color: #d8dade;
}
.ol-zoom .ol-zoom-out {
  margin-top: 242px;
  border-top-color: #d8dade;
}
.ol-control button {
  width: 100%;
  background: #fff;
  margin: 0;
  height: 24px;
  border-radius: 0;
  color: #454545;
  font-weight: bold;
  border: 1px solid #6d757e;
  border-radius: 3px 3px 0 0;
  cursor: pointer;
  font-size: 20px;
}
.ol-control button:focus {
  outline: 2px dashed #000;
  outline-offset: -2px;
}
.ol-zoomslider-thumb {
  background-color: #1dab8f;
  z-index: 9;
}
.ol-zoomslider button {
  position: relative;
  width: 18px;
  height: 10px;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 2px;
  border: 1px solid #6d757e;
}
.ol-zoomslider button::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 1px;
  background: #1dab8f;
}
.ol-control:hover {
  background-color: #abbcc6;
}
.ol-control button:focus,
.ol-control button:hover {
  background-color: #fff;
}
.ol-control button:hover {
  outline: 0;
}
.ol-zoomslider .zoomslider-filled {
  position: absolute;
  background-color: #1dab8f;
  width: 10px;
  height: 0;
  bottom: 0;
  left: 0;
}

/* Tooltip adjustments */
.ol-zoom-in.ol-has-tooltip:hover [role="tooltip"],
.ol-zoom-in.ol-has-tooltip:focus [role="tooltip"],
.ol-zoom-out.ol-has-tooltip:hover [role="tooltip"],
.ol-zoom-out.ol-has-tooltip:focus [role="tooltip"] {
  top: auto !important;
  bottom: 5px !important;
  right: 30px !important;
}

/* BOTTOM WRAP */

.bt_wrap {
  position: absolute;
  right: 20px;
  bottom: 30px;
  display: flex;
}
.bt_wrap .logo {
  margin-left: 50px;
}
.address_txt {
  position: absolute;
  right: 12px;
  bottom: 40px;
  background: #1778cc;
  border: 1px solid #205f8f;
  border-radius: 50px;
  font-size: 1.6rem;
  padding: 10px 16px;
  color: #fff;
  box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.25);
  text-align: center;
  word-break: keep-all;
  white-space: nowrap;
  z-index: 10;
}
.device_label {
  position: absolute;
  left: 12px;
  bottom: 40px;
  background: rgba(40, 40, 40, 0.85);
  border-radius: 6px;
  font-size: 1.2rem;
  padding: 6px 12px;
  color: #fff;
  z-index: 10;
}
.device_label.is-mobile {
  background: rgba(11, 132, 100, 0.9);
}
.device_label.is-pc {
  background: rgba(40, 40, 40, 0.85);
}

/* modal */

.popup {
  display: none;
  position: absolute;
  z-index: 20;
  min-width: 320px;
}
.popup.show {
  display: block;
}

.popup.t1 {
  width: 100%;
  max-width: 380px;
  top: 80px;
  left: 20px;
  background: #fff;
  border-radius: 5px;
  overflow: hidden;
}
.popup.t1 .pop_head {
  padding: 16px 0;
  margin: 0 16px;
  border-bottom: 1px solid #efefef;
}
.popup.t1 .pop_head strong {
  font-size: 1.8rem;
  color: #2e3033;
  font-weight: bold;
}
#search_address,
#bookmark_pop,
#my_mnt_result {
  height: 89vh;
  overflow: hidden;
  z-index: 21;
}
#my_mnt_result .pop_body,
#bookmark_pop .pop_body,
#search_address .pop_body {
  background: #f7f7f9;
}
.popup.t1 .pop_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.popup.t1 .pop_body {
  height: calc(100% - 56px);
  background: #fff;
  overflow-y: auto;
  padding-bottom: 16px;
}
.popup.t1 .pop_head .pop_close_btn {
  width: 20px;
  height: 20px;
  background: url(/dad_user/images/site/map/ico_pop_close.svg) no-repeat center;
}
.popup.t1 .pop_body ul {
  width: 100%;
  padding: 15px;
  background: #fff;
}
.popup.t1 .pop_body ul li {
  font-size: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}
.popup.t1 .pop_body ul li:last-child {
  margin-bottom: 0;
}
.popup.t1 .pop_body ul li .tit {
  position: relative;
  padding-left: 24px;
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.popup.t1 .pop_body ul li .tit::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 14px;
  height: 14px;
  background: url(/dad_user/images/site/map/ico_search_list.png);
}
.popup.t1 .pop_body ul li .del_btn {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #f2f1f6 url(/dad_user/images/site/map/ico_list_del.png) no-repeat
  center;
  margin-left: 10px;
}
.popup .inner {
  width: 100%;
  padding: 0 16px;
}
#multi_link_forest ul {
  height: 370px;
  overflow-y: auto;
}
#multi_link_forest .btn {
  width: 100%;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
  background: var(--blue);
  color: #fff;
  padding: 10px 0;
}
.popup.t1 .all_del {
  display: inline-block;
  color: var(--blue);
  font-size: 1.3rem;
  padding: 8px 16px;
}
.popup.t1 .all_del.nopd {
  padding: 0;
}

.popup.t2 {
  width: 100%;
  max-width: 930px;
  height: auto;
  position: absolute;
  top: 134px;
  right: 90px;
  z-index: 20;
}
.popup.t2 .pop_head {
  width: 100%;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 5px 5px 0 0;
  background: #fff;
}
.popup.t2 .pop_head strong {
  font-weight: bold;
  font-size: 1.8rem;
}
.popup.t2 .pop_head .pop_close_btn {
  width: 20px;
  height: 20px;
  background: url(/dad_user/images/site/map/ico_pop_close.svg) no-repeat center;
}
#slope_pop .pop_head {
  align-items: baseline;
}
#slope_pop .pop_head .left {
  display: flex;
  align-items: center;
  gap: 10px;
}
#slope_pop .pop_head .left p {
  font-size: 1.6rem;
}
#slope_pop .pop_head strong {
  padding-left: 28px;
  background: url(/dad_user/images/site/map/ico_slope.svg) no-repeat center left /
    15px 15px;
}
#slope_pop .pop_body {
  background: #23212f;
  padding: 16px 20px;
  border-radius: 0 0 5px 5px;
  overflow-y: auto;
  overflow-x: hidden;
}
#slope_pop .box {
  padding: 5px 30px;
  background: #fff;
  font-size: 1.6rem;
  border-radius: 5px;
  word-break: keep-all;
  margin-top: 5px;
}
#slope_pop .box .mark {
  position: relative;
  padding-left: 16px;
}
#slope_pop .box .mark::before {
  content: "※";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
.popup.t3 {
  width: 100%;
  max-width: 380px;
  height: 89vh;
  top: 80px;
  left: 20px;
  background: #fff;
  border-radius: 5px;
  overflow: hidden;
}
.popup.t3 .pop_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 17px 16px;
  border-bottom: 1px solid #efefef;
}
.popup.t3 .pop_body {
  height: calc(100% - 56px);
  background: #fff;
  overflow-y: auto;
}
.popup.t3 .pop_head strong {
  font-size: 1.8rem;
  color: #2e3033;
  font-weight: bold;
  padding-left: 28px;
  background-position: center left;
  background-size: 15px 15px;
  background-repeat: no-repeat;
}
#my_mnt .pop_head strong {
  background-image: url(/dad_user/images/site/map/ico_menu03.svg);
}
#carbon_seq .pop_head strong {
  background-image: url(/dad_user/images/site/map/ico_menu04.svg);
}
.popup.t3 .pop_body .cont {
  padding: 16px;
  border-bottom: 1px solid #efefef;
}
.popup.t3 .pop_body .cont.ic {
  padding: 16px 0 0 0;
}
.popup.t3 .pop_body .cont.ic .chk_tit,
.popup.t3 .pop_body .cont.ic .check_wrap {
  padding: 0 16px;
}

.popup.t3 .pop_body .btn_wrap {
  padding: 20px;
  text-align: center;
}
.popup.t3 .pop_body .btn_wrap .btn {
  color: #fff;
  font-size: 1.6rem;
  font-weight: 600;
  background: var(--blue);
  padding: 8px 5px;
  line-height: 1.2;
}
.popup.t3 .pop_close_btn {
  display: none;
  width: 18px;
  height: 18px;
  background: url(/dad_user/images/site/map/ico_pop_close.svg) no-repeat center /
    contain;
}

/* 내게 맞는 산 찾기 */
.my_mnt_result {
  width: calc(100% - 520px);
  left: 420px;
  bottom: 21px;
  background: #fff;
}
.my_mnt_result .pop_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 42px;
  padding: 0 30px;
  border-bottom: 1px solid #d8d8d8;
  font-size: 16px;
  font-weight: bold;
}
.my_mnt_result .close_btn {
  width: 16px;
  height: 16px;
  background: url(/dad_user/images/site/map/ico_pop_close.svg) no-repeat center;
}
.my_mnt_result .pop_foot {
  height: 42px;
  padding: 0 30px;
  align-content: center;
  font-size: 16px;
}
.my_mnt_result .tb_wrap {
  overflow: auto;
  width: 100%;
  max-height: 230px;
  width: 2200px;
  overflow-x: hidden;
}
.my_mnt_result table {
  position: static;
  width: 100%;
  min-width: 2200px;
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: collapse;
}
.my_mnt_result th,
.my_mnt_result td {
  vertical-align: middle;
  font-size: 14px;
  text-align: center;
  border-bottom: 1px solid #d8d8d8;
}
.my_mnt_result th {
  padding: 15px 5px;
  height: 44px;
  background: #eef7ee;
}
.my_mnt_result td {
  padding: 10px 5px;
  height: 40px;
}
.my_mnt_result .info_btn {
  width: 24px;
  height: 24px;
  background: url(/dad_user/images/site/map/ico_marker.png) no-repeat center /
    contain;
}
.my_mnt_result .pop_body {
  width: 100%;
  position: relative;
  padding-top: 47px;
  overflow: auto;
}
.my_mnt_result thead tr {
  position: absolute;
  top: 0;
}
.my_mnt_result thead th {
  position: sticky;
  z-index: 1;
}
.my_mnt_result table tr {
  display: inline-table;
  width: 2200px;
  table-layout: fixed;
}
.my_mnt_result table tbody tr {
  display: table-row;
}

@media screen and (max-width: 900px) {
  #header .search_wrap {
    width: 100%;
  }
  .my_mnt_result {
    width: 100%;
    left: 0;
    bottom: 0;
  }

  .my_mnt_result .tb_wrap {
    max-height: 120px;
  }
}

@media screen and (max-width: 640px) {
  #slope_pop .box {
    font-size: 1.3rem;
    padding: 5px 10px;
  }
  #slope_pop .box .mark {
    padding: 0;
  }
  #slope_pop .box .mark::before {
    position: static;
    padding-right: 4px;
  }
  #slope_pop .pop_head .left {
    flex-direction: column;
    align-items: start;
    gap: 5px;
  }
  #slope_pop .pop_head .left p {
    font-size: 1.2rem;
  }
}

/* 우클릭 메뉴 */

.context_menu {
  display: none;
  width: 120px;
  position: absolute;
  background: #fff;
  border: 1px solid #bce6de;
  z-index: 999;
  border-radius: 10px;
  overflow: hidden;
}
.context_menu ul li {
  border-bottom: 1px solid #bce6de;
}
.context_menu ul li:last-child {
  border-bottom: 0;
}
.context_menu ul li a {
  padding: 8px 25px;
  text-align: left;
  font-size: 1.3rem;
}
.context_menu ul li a:hover {
  background-color: #f2f1f6;
}

/* 필지분석 팝업 */
.analyze_pop {
  display: none;
  width: 100%;
  max-width: 830px;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.2);
  min-width: 320px;
  z-index: 21;
}
.analyze_pop .pop_wrap {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  max-width: 830px;
  width: 100%;
  height: 100vh;
}
.analyze_pop .pop_wrap .pop_box {
  width: 100%;
  height: 100%;
  background: #fff;
  overflow-y: scroll;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}
.analyze_pop .pop_head {
  position: relative;
  width: 100%;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-right: 55px;
  padding-left: 15px;
}
/*#lf_pop .no_tab{}*/
.analyze_pop .pop_head .lf_multi_tabs {
  display: none;
  border: 1px solid #d4d7dc;
  height: 100%;
}
.analyze_pop.multi .pop_head {
  padding: 0;
  height: auto;
  flex-direction: column;
  align-items: baseline;
  gap: 5px;
}
.analyze_pop .pop_head .row {
  width: 100%;
  margin-top: 10px;
  padding-left: 20px;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding-right: 55px;
}
.analyze_pop.multi .pop_head .lf_multi_tabs {
  display: flex;
}
.analyze_pop .pop_head .lf_multi_tabs li {
  border-right: 1px solid #d4d7dc;
}
.analyze_pop .pop_head .lf_multi_tabs li:last-child {
  border-right: 0;
}
.analyze_pop .pop_head .lf_multi_tabs li a {
  font-size: 1.6rem;
  padding: 0 15px;
  height: 32px;
  display: flex;
  align-items: center;
  text-align: center;
}
.analyze_pop .pop_head .lf_multi_tabs li.on a {
  background: var(--green);
  color: #fff;
}
.analyze_pop .pop_head .util {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
}
.analyze_pop .pop_head .bookmark {
  width: 25px;
  height: 24px;
  background: url(/dad_user/images/site/map/ico_bookmark.svg) no-repeat center;
}
.analyze_pop .pop_head .bookmark.on {
  background: url(/dad_user/images/site/map/filji_bookmark_on.svg) no-repeat
  center;
}
.analyze_pop .pop_head .util .print_btn {
  padding: 6px 13px 6px 40px;
  border: 1px solid #d8dade;
  border-radius: 5px;
  background: url(/dad_user/images/site/map/ico_print.png) no-repeat center left
  13px;
  font-size: 1.4rem;
}
.analyze_pop .pop_head .util .close {
  position: fixed;
  top: 5px;
  right: 28px;
  width: 35px;
  height: 35px;
  background: url(/dad_user/images/site/map/ico_pop_close.svg) no-repeat center /
    16px 16px;
  z-index: 10005;
  background-color: #fff;
  border-radius: 50%;
} /*필지 닫기 버튼*/
.analyze_pop .pop_head .left {
  display: flex;
  align-items: center;
  gap: 10px;
}
.analyze_pop .pop_head .link_btn {
  padding: 5px 10px;
  font-size: 1.4rem;
  white-space: nowrap;
}
.analyze_pop .pop_body {
  padding-bottom: 12px;
}
/*.analyze_pop .img_wrap{position: relative; width: 100%; height: auto; padding-bottom:43%}*/
.analyze_pop .img_wrap {
  position: relative;
  width: 100%;
  height: auto;
}
.analyze_pop .img_wrap.carbon {
  position: relative;
  width: 100%;
  height: auto;
  padding-bottom: 0%;
}
.analyze_pop .img_wrap .tit {
  position: relative;
  width: 100%;
  height: 40px;
  text-align: center;
  background: #fff;
  padding: 0 10px;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
}
.analyze_pop .img_wrap .tit p {
  text-align: center;
  color: #333;
  font-size: 1.8rem;
  line-height: 40px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.analyze_pop .img_wrap img {
  width: auto;
  height: 100%;
}
#screenshotContainer {
  width: 100%;
  height: 100%;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
}
.analyze_pop .tb_wrap {
  margin-top: 10px;
  background: #fff;
}
.analyze_pop .tb_wrap table {
  width: 100%;
  table-layout: fixed;
  margin-bottom: 8px;
}
.analyze_pop .tb_wrap table tbody {
  border-top: 1px solid #d8dade;
  border-left: 1px solid #d8dade;
}
.analyze_pop .in_tab_cont .tb_wrap table tbody {
  border-left: 0;
}
.analyze_pop .sl_tab_cont .tb_wrap table tbody {
  border-left: 0;
}
.analyze_pop .tb_wrap table th,
.analyze_pop .tb_wrap table td {
  padding: 8px;
  font-size: 1.6rem;
  vertical-align: middle;
  border-right: 1px solid #d8dade;
  border-bottom: 1px solid #d8dade;
  color: var(--black2);
}
.analyze_pop .tb_wrap table th {
  text-align: center;
  background: #f7f7f9;
  font-weight: bold;
}
.analyze_pop .tb_wrap table td {
  text-align: center;
  padding: 8px 15px;
}
.analyze_pop .tb_wrap table th.first {
  color: #5b5b5b;
  border-left: 0;
}

/* 2024-09-20 추가 */
.analyze_pop .tb_wrap table th .info_key_btn {
  display: inline-block;
  width: 17px;
  height: 17px;
  font-size: 0;
  background: url(/dad_user/images/site/map/ico_info_btn.svg) no-repeat center;
  flex: 0 0 auto;
}

.dark-theme .analyze_pop .tb_wrap table th .info_key_btn{
  filter : invert(1);
}

.analyze_pop .tb_wrap table th .info_item {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.analyze_pop .info_box {
  display: none;
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9;
  margin-left: 10px;
}
.analyze_pop .info_box .box_close_btn {
  position: absolute;
  width: 16px;
  height: 16px;
  right: 20px;
  top: 13px;
  background: url(/dad_user/images/site/map/ico_pop_close.svg) no-repeat center /
    contain;
  font-size: 0;
}
.analyze_pop .info_box.show {
  display: block;
}
.analyze_pop .info_box .box_wrap {
  position: relative;
  width: 400px;
  height: auto;
  background: #f8f8f8;
  padding: 13px 16px;
  border-radius: 5px;
}
.analyze_pop .info_box .tit {
  font-size: 1.6rem;
  color: #1d1d1d;
  font-weight: bold;
  padding-left: 28px;
  padding-right: 30px;
  background: url(/dad_user/images/site/map/ico_info_box.png) no-repeat top left;
}
.analyze_pop .info_box .desc {
  border-top: 1px solid #d9d9d9;
  margin-top: 8px;
  padding-top: 10px;
  font-size: 1.6rem;
  color : black;
}
.analyze_pop .info_box .desc table {
  width: 100%;
  margin-top: 10px;
  font-size: 14px;
}
.analyze_pop .info_box .desc table thead {
  border-top: 2px solid #d8dade;
}
.analyze_pop .info_box .desc table thead th {
  background: #f7f7f9;
}
.analyze_pop .info_box .desc table th,
.analyze_pop .info_box .desc table td {
  padding: 3px 10px;
  text-align: center;
  border-bottom: 1px solid #d8dade;
}
.analyze_pop .info_box .desc table td {
  background: #fff;
}
.analyze_pop .info_box .desc table .taL {
  text-align: left;
}
.analyze_pop .info_box .source {
  position: relative;
  display: inline-block;
  font-size: 1.2rem;
  color: #4a4a4a;
  padding-left: 20px;
  line-height: 1;
  color: #4a4a4a;
  font-size: 12px;
  margin-top: 20px;
  line-height: 1.4;
}
.analyze_pop .info_box .source::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 20px;
  height: 20px;
  background: url(/dad_user/images/site/map/ico_source.png) no-repeat center /
    contain;
}

.analyze_pop .tb_info_txt {
  padding: 10px;
}
.analyze_pop .tb_info_txt strong {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 6px 0;
  line-height: 1.4;
  text-align: center;
  font-size: 1.6rem;
  background: var(--blue);
  color: #fff;
  font-weight: bold;
}
.analyze_pop .tb_info_txt i {
  display: inline-block;
  width: 17px;
  height: 17px;
  margin: 0 5px;
  background: url(/dad_user/images/site/map/ico_info_btn_white.svg) no-repeat
  center;
}
.analyze_pop .tb_info_txt .txt {
  font-size: 1.6rem;
  color: #000;
  margin-top: 15px;
}
.analyze_pop .tb_info_txt .txt p {
  position: relative;
  padding-left: 15px;
  font-weight: bold;
}
.analyze_pop .tb_info_txt .txt p::after {
  content: "※";
  position: absolute;
  top: 10px;
  left: 0;
  transform: translateY(-50%);
}
.analyze_pop .pop_wrap .txt_cont {
  padding-top: 0;
}
.analyze_pop .txt_cont {
  padding: 32px 24px;
  background: #fff;
}
.analyze_pop .txt_cont .item {
  border-bottom: 1px solid #d8dade;
  padding: 32px 0;
}
.analyze_pop .txt_cont .item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
.analyze_pop .txt_cont .cont_tit {
  position: relative;
  padding-left: 18px;
  font-size: 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: bold;
}
.analyze_pop .txt_cont .cont_tit::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 5px;
  height: 17px;
  border-radius: 10px;
  background: #00264b;
}
.analyze_pop .txt_cont .cont_tit .info_btn {
  padding: 8px 40px;
  border: 1px solid #ddd;
  color: #6b6e6b;
  font-size: 1.5rem;
  border-radius: 5px;
  font-weight: 400;
}
.analyze_pop .txt_cont .cont {
  margin-top: 24px;
}
.analyze_pop .txt_cont .cont li {
  display: flex;
}
.analyze_pop .txt_cont .cont li .tit {
  position: relative;
  padding-left: 20px;
  font-size: 1.7rem;
  font-weight: 600;
}
.analyze_pop .txt_cont .cont li .tit::before {
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  border-left: 10px solid black;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
}
.analyze_pop .txt_cont .cont .box {
  display: inline-block;
  text-align: center;
  border-radius: 5px;
  border: 1px solid #ddd;
  background: #f5f8fb;
  font-size: 1.6rem;
  padding: 8px 30px;
  min-width: 130px;
}
.analyze_pop .txt_cont .cont.t1 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.analyze_pop .txt_cont .cont.t1 li {
  align-items: center;
  gap: 23px;
}
.analyze_pop .txt_cont .cont.t2 li {
  margin-bottom: 16px;
}
.analyze_pop .txt_cont .cont.t2 .tit {
  padding-top: 8px;
  max-width: 430px;
  width: 100%;
}
.analyze_pop .txt_cont .cont.t2 .tit::before {
  top: 12px;
}
.analyze_pop .txt_cont .cont.t2 .tit::after {
  content: "";
  position: absolute;
  top: 10px;
  right: 0;
  width: 1px;
  height: 20px;
  background: #d8dade;
}
.analyze_pop .txt_cont .cont.t2 .desc {
  width: calc(100% - 430px);
  padding-left: 48px;
}
.analyze_pop .txt_cont .box.long_txt {
  text-align: left;
  width: 100%;
}
.analyze_pop .info_tb {
  width: 100%;
  text-align: center;
  margin-top: 30px;
}
.analyze_pop .info_tb th,
.analyze_pop .info_tb td {
  padding: 5px;
  font-size: 1.6rem;
  border-right: 1px solid #d8dade;
}
.analyze_pop .info_tb th {
  background: #f7f7f9;
}
.analyze_pop .info_tb td {
  border-bottom: 1px solid #d8dade;
}
.analyze_pop .info_tb th:last-child,
.analyze_pop .info_tb td:last-child {
  border-right: 0;
}

.az_inner_pop {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 760px;
  z-index: 100;
  background: #fff;
  box-shadow: 0px 1px 40px 0px rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  overflow: hidden;
}
.az_inner_pop.show {
  display: block;
}
.az_inner_pop .pop_head {
  height: auto;
  padding: 20px 30px;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #ddd;
}
.az_inner_pop .pop_head .close_btn {
  width: 20px;
  height: 20px;
  background: url(/dad_user/images/site/map/ico_pop_close.svg) no-repeat center;
}
.az_inner_pop .pop_head strong {
  font-size: 2.2rem;
  font-weight: bold;
  color: #2e3033;
}
.az_inner_pop .pop_body {
  padding: 20px;
  background: #fff;
  max-height: 600px;
  overflow-y: auto;
}
.az_inner_pop .pop_body .cont {
  margin-bottom: 40px;
}
.az_inner_pop .pop_body .cont strong {
  font-size: 2rem;
  font-weight: bold;
  padding-bottom: 20px;
  color: #2e3033;
}
.az_inner_pop .pop_body .cont ul li {
  position: relative;
  font-size: 1.6rem;
  margin-bottom: 12px;
  line-height: 1.4;
  padding-left: 12px;
}
.az_inner_pop .pop_body .cont ul li:last-child {
  margin-bottom: 0;
}
.az_inner_pop .pop_body .cont ul li:after {
  content: "";
  position: absolute;
  width: 4px;
  height: 4px;
  background: #333;
  border-radius: 50%;
  left: 0;
  top: 8px;
}
.analyze_pop .az_inner_pop .img_wrap {
  height: auto;
  margin-bottom: 40px;
}
.analyze_pop .az_inner_pop .img_wrap img {
  width: 100%;
  height: auto;
}

.analyze_pop .tab_container .tabs {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #d8dade;
}
.analyze_pop .tab_container .tabs li {
  width: 50%;
  height: 42px;
}
.analyze_pop .tab_container .tabs li a {
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  font-weight: 600;
}
.analyze_pop .in_tabs a:focus,
.analyze_pop .swiper-slide a:focus,
.analyze_pop .tab_container .tabs li a:focus {
  outline-offset: -2px;
}
.analyze_pop .tab_container .tabs li.active a {
  background: var(--green);
  color: #fff;
}
.analyze_pop .slide_wrap {
  position: relative;
  padding: 0 40px;
  height: 40px;
  border-top: 1px solid #d8dade;
  border-bottom: 1px solid #d8dade;
  margin: 12px 0;
  background: #f7f7f9;
}
.analyze_pop .tab_slide {
  width: 100%;
  height: 100%;
  margin: 10px 0;
  padding: 0 15px;
}
.analyze_pop .info_tabs {
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid #d8dade;
}
.analyze_pop .info_tabs li.active a {
  font-weight: bold;
  color: #000;
}
.analyze_pop .info_tabs li.w25 {
  width: 25%;
}
.analyze_pop .info_tabs li.w20 {
  width: 20%;
}
.analyze_pop .info_tabs li a {
  width: 100%;
  height: 40px;
  text-align: center;
  align-content: center;
  font-size: 1.6rem;
  color: #555;
  background: #f7f7f9;
  border-bottom: 1px solid #d8dade;
}
.analyze_pop .info_tabs li a:focus {
  outline-offset: -2px;
}
.analyze_pop .sl_tab_cont {
  display: none;
  padding: 0 15px;
}
.analyze_pop .sl_tab_cont.show {
  display: block;
}
/*
.analyze_pop .swiper-slide{width: 160px;}
.analyze_pop .swiper-slide a{width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 1.6rem; text-align: center;}
.analyze_pop .sl_tab_cont{display: none; padding: 0 15px;}
.analyze_pop .sl_tab_cont.show{display: block;}
.swiper-button-next.swiper-button-disabled, 
.swiper-button-prev.swiper-button-disabled{opacity: 1;}
.analyze_pop .swiper-button-next:after, 
.analyze_pop .swiper-button-prev:after{font-size: 2rem; color: #434343; font-weight: bold;}
.analyze_pop .swiper-slide.active{font-weight: bold; color: #000;}
*/
.analyze_pop .sl_tab_cont .tb_wrap {
  overflow-x: auto;
  width: 100%;
}
.analyze_pop .sl_tab_cont table {
  width: 100%;
  table-layout: fixed;
}
.analyze_pop .sl_tab_cont table thead {
  border-top: 2px solid #d8dade;
}
.analyze_pop .sl_tab_cont table th,
.analyze_pop .sl_tab_cont table td {
  font-size: 1.4rem;
  text-align: center;
  border-left: 1px solid #d8dade;
  border-bottom: 1px solid #d8dade;
  vertical-align: middle;
}
.analyze_pop .sl_tab_cont table th {
  color: #000;
  background: #f7f7f9;
  padding: 6px 0;
  height: 48px;
}
.analyze_pop .sl_tab_cont table td {
  padding: 11px 5px;
}
.analyze_pop .sl_tab_cont table td.txt2 {
  padding: 3px 5px;
}
.analyze_pop .sl_tab_cont table .tb_btn {
  display: inline-block;
  padding: 3px 15px;
  font-size: 14px;
  color: #fff;
  background: var(--green);
}
.analyze_pop .sl_tab_cont table .circle {
  display: inline-block;
  position: relative;
  top: 2px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--green);
}
.analyze_pop .in_tab_cont {
  display: none;
}
.analyze_pop .in_tab_cont.show {
  display: block;
}
.analyze_pop .in_tabs {
  display: flex;
  align-items: center;
  text-align: center;
  margin-bottom: 12px;
  border-bottom: 1px solid #d8dade;
}
.analyze_pop .in_tabs.n5 li {
  width: 20%;
}
.analyze_pop .in_tabs.n2 li {
  width: 50%;
}
.analyze_pop .in_tabs a {
  padding: 10px 0;
  text-align: center;
  background: #f7f7f9;
  color: #555;
  font-size: 1.6rem;
}
.analyze_pop .in_tabs .active a {
  color: #fff;
  background: #545454;
}
.analyze_pop .sl_tab_cont table tbody {
  border-top: 0;
}
.analyze_pop .sl_tab_cont table th,
.analyze_pop .sl_tab_cont table td {
  border-left: 0;
  border-right: 0;
  word-break: keep-all;
}
.analyze_pop .sl_tab_cont .source {
  text-align: right;
}
.analyze_pop .sl_tab_cont .source span {
  display: inline-block;
  font-size: 1.2rem;
  color: #4a4a4a;
  padding-left: 20px;
  line-height: 2;
  background: url(/dad_user/images/site/map/ico_source.png) no-repeat top 2px
  left / 16px 20px;
}
.analyze_pop .sl_tab_cont .txt_wrap {
  margin-top: 10px;
}
.analyze_pop .sl_tab_cont .txt_wrap p {
  font-size: 1.6rem;
  color: #000;
  padding-top: 16px;
  word-break: keep-all;
}
.analyze_pop .sl_tab_cont .txt_wrap .box {
  border: 1px solid #ddd;
  background: #f5f8fb;
  border-radius: 5px;
  display: inline-block;
  font-size: 1.6rem;
  padding: 8px 50px;
  margin-top: 16px;
}
.analyze_pop .sl_tab_cont table tbody th {
  height: auto;
}
.analyze_pop .sl_tab_cont table thead th.red {
  border-top: 2px solid #a70000;
  color: #a70000;
  background: #faf2f2;
  font-size: 1.6rem;
  border-right: 1px solid #d8dade;
}
.analyze_pop .sl_tab_cont table thead th.blue {
  border-top: 2px solid #028edd;
  color: #028edd;
  background: #f2f9fd;
  font-size: 1.6rem;
}
.analyze_pop .sl_tab_cont table td .red {
  color: #a70000;
}
.analyze_pop .sl_tab_cont table td .blue {
  color: #028edd;
}
.analyze_pop .sl_tab_cont .table {
  margin-bottom: 16px;
  border-top: 1px solid #d8dade;
}
.analyze_pop .sl_tab_cont .table .item {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #d8dade;
}
.analyze_pop .sl_tab_cont .table .item > div {
  width: 50%;
  padding: 11px 0;
  text-align: center;
  font-size: 1.4rem;
}
.analyze_pop .sl_tab_cont .table .item .tit {
  background: #f7f7f9;
}
.link_btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 500;
  padding: 7px 10px;
  border-radius: 5px;
  border: 1px solid var(--green);
  font-size: 1.6rem;
}
.link_btn::after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: url(/dad_user/assets/images/map/ico_link.png) no-repeat center /
    contain;
}

/* 필지분석 아코디언 추가 */

.tb_acco .acco_head {
  width: 100%;
  padding: 0 10px;
}
.tb_acco .acco_head span {
  display: inline-block;
  position: relative;
  padding-right: 26px;
}
.tb_acco .acco_head span::after {
  content: "";
  width: 18px;
  height: 18px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(/dad_user/assets/images/map/ico_acco_arrow.png) no-repeat
  center / contain;
}
.tb_acco .acco_head .on span::after {
  transform: translateY(-50%) rotate(180deg);
}
.tb_acco .acco_body {
  display: none;
}
.tb_acco .acco_body .info_item {
  line-height: 2;
}
.tb_acco .acco_head a {
  padding: 8px;
  font-size: 1.6rem;
  text-align: center;
  background: #f7f7f9;
  border: 1px solid #d8dade;
  border-radius: 5px;
  color: var(--black2);
  font-weight: bold;
}
.analyze_pop .tb_wrap .tb_acco table thead {
  border-top: 1px solid #d8dade;
}
.analyze_pop .tb_wrap .tb_acco table tbody {
  border: 0;
}
.analyze_pop .tb_wrap .tb_acco table th {
  position: relative;
}
.analyze_pop .tb_wrap .tb_acco table td {
  padding: 8px;
  word-break: break-all;
  text-align: center;
}
.tb_acco .link_btn {
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
}
.analyze_pop .taL {
  text-align: left !important;
}
.analyze_pop .tb_wrap .tb_acco table p {
  padding: 3px 0;
  word-break: keep-all;
}

/* 필지분석 버튼 팝업 */

.measure_box {
  position: absolute;
  text-align: center;
  background: #fff;
  border-radius: 5px;
  padding: 5px 15px;
  white-space: nowrap;
}
.measure_box.distance {
  top: 50%;
  left: 20rem;
}
.measure_box.area {
  left: 40rem;
  top: 40%;
}
.measure_box .top {
  display: flex;
  align-items: center;
  font-size: 1.2rem;
  font-weight: 600;
}
.measure_box .top span {
  margin-left: 7px;
  padding: 4px 10px;
  border-radius: 5px;
  background: #eef2f7;
  color: #21396c;
}
.measure_box .btns {
  margin-top: 5px;
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: center;
}
.measure_box .btns a {
  padding: 3px 16px;
  border-radius: 20px;
  font-size: 1.4rem;
}
.measure_box .btns a.del_btn {
  color: #fff;
  background: #627aa2;
}
.measure_box .btns a.visual_btn {
  color: #fff;
  background: #1778cc;
}

/* 내게 맞는 산 찾기 */

.popup .select_wrap .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
.popup .select_wrap .item:last-child {
  margin-bottom: 0;
}
.popup .select_wrap .item .tit {
  font-size: 1.5rem;
  color: #2e3033;
  padding-left: 24px;
  background: url(/dad_user/images/site/map/ico_marker.png) no-repeat center
  left / 22px;
}
.popup .select_wrap .item .desc {
  flex: 1;
  text-align: right;
}
.popup .select_wrap .select {
  width: 100%;
  height: 32px;
  font-size: 1.5rem;
  border: 1px solid #d4d7dc;
  border-radius: 8px;
  padding: 0 32px 0 15px;
  text-align: left;
  background: url(/dad_user/images/site/map/ico_select_arrow.svg) no-repeat
  center right 15px;
  color: #333;
}
/* 탄소흡수량 면적 입력 */
.popup .select_wrap .input {
  width: 100%;
  height: 32px;
  font-size: 1.5rem;
  border: 1px solid #d4d7dc;
  border-radius: 8px;
  padding: 0 32px 0 15px;
  text-align: left;
  color: #333;
}
.popup .select_wrap.my_mnt .select {
  max-width: 163px;
}
.popup.t3 .pop_body .cont .chk_tit {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.popup.t3 .pop_body .cont .chk_tit strong {
  font-size: 1.6rem;
  color: #2e3033;
  font-weight: 600;
}
.popup .check_wrap {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.popup .check_wrap.n3 .btn_chk {
  width: calc(33.33333% - 3 / 4 * 11px);
}
.popup .check_wrap.n4 .btn_chk {
  width: calc(25% - 4 / 5 * 12px);
}
.popup.my_mnt .tab_wrap ul {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.popup.my_mnt .tab_wrap ul li {
  width: calc(25% - 4 / 5 * 12px);
}
.popup.my_mnt .tab_wrap ul li a {
  width: 100%;
  color: #2e3033;
  font-size: 1.5rem;
  display: inline-block;
  position: relative;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d4d7dc;
  border-radius: 8px;
  line-height: 1;
  transition: 0.2s;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.4;
}
.popup.my_mnt .tab_wrap ul li.active a {
  color: #fff;
  border: 1px solid var(--green);
  background: var(--green);
  font-weight: 600;
}

.popup.t3 .pop_body .cont.tab {
  padding: 16px 0 0 0;
}
.popup.t3 .tab_cont {
  display: none;
  padding: 16px 0;
  margin-top: 20px;
  background: #f7f7f9;
}
.popup.t3 .tab_cont.show {
  display: block;
}
.popup.t3 .pop_body .cont .tab_cont .chk_tit strong {
  font-size: 1.5rem;
}
.popup.t3 .pop_body .cont.tab .chk_tit,
.popup.t3 .pop_body .cont.tab .tab_wrap {
  padding: 0 16px;
}
.popup.t3 .pop_body .cont.tab .tab_cont {
  padding: 16px;
}
.popup.t3 .pop_body .cont.tab .tab_cont .chk_tit {
  padding: 0;
}

.popup.my_mnt .pop_body {
  height: calc(100% - 133px);
}
.my_mnt .btn_wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  width: 100%;
  gap: 12px;
  padding: 20px;
  background: #fff;
  border-top: 1px solid #efefef;
}
.popup.my_mnt .pop_body .btn_wrap .btn {
  padding: 8px 20px;
}
.popup.my_mnt .pop_body .btn_wrap .analysis {
  flex: 1;
}
.popup.my_mnt .pop_body .btn_wrap .reset_btn {
  display: inline-flex;
  gap: 6px;
  background: #e9e9e9;
  color: #606060;
}
.popup.my_mnt .pop_body .btn_wrap .reset_btn i {
  width: 18px;
  height: 18px;
  background: url(/dad_user/images/site/map/ico_reset.png) no-repeat center;
}
.popup.my_mnt .tab_wrap.type ul {
  gap: 0;
}
.popup.my_mnt .tab_wrap.type ul li {
  width: 33.3333%;
}
.popup.my_mnt .tab_wrap.type ul li a {
  height: 60px;
  border-radius: 0;
  font-size: 15px;
}
.popup.my_mnt .tab_wrap.type ul li:first-child a {
  border-radius: 8px 0 0 8px;
  border-right: 0;
}
.popup.my_mnt .tab_wrap.type ul li:last-child a {
  border-radius: 0 8px 8px 0;
  border-left: 0;
}
.popup.my_mnt .tab_wrap.type ul li.active a {
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
}
.popup.my_mnt .empty_wrap {
  text-align: center;
  margin-top: 16px;
  font-size: 1.6rem;
}

.ariaButton {
  font-size: 12px;
  padding: 3px 5px;
  border: 1px solid var(--blue);
  color: var(--blue);
  border-radius: 4px;
}

/* 탄소흡수량 예측 서비스 */

.popup .select_wrap.carbon .select {
  max-width: 190px;
}
.popup .select_wrap.carbon .input {
  max-width: 190px;
} /* 탄소흡수량 면적 입력칸 */
.popup.t3 .pop_body .cont.nobd {
  border-bottom: 0;
}
.popup .calc_wrap {
  margin-top: 24px;
}
.popup .calc_wrap .btns {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  text-align: center;
}
.popup .calc_wrap .btns a {
  width: calc(33.33333% - 3 / 4 * 11px);
  height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #f5f8fb;
  border: 1px solid #d4d7dc;
  border-radius: 8px;
  font-size: 1.5rem;
  color: #2e3033;
  padding: 0 10px;
  word-break: keep-all;
  transition: 0.2s;
}
.popup .calc_wrap .btns a:hover {
  font-weight: 600;
  color: #fff;
  border-color: var(--blue);
  background: var(--blue);
}

.popup .calc_wrap .result_tb .tit {
  width: 100%;
  padding: 8px 5px;
  background: var(--blue);
  color: #fff;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
}
.popup .calc_wrap .result_tb .result {
  padding: 8px 5px;
  font-size: 1.6rem;
  border-bottom: 1px solid #efefef;
  text-align: center;
  font-weight: bold;
}
.popup .calc_wrap p {
  font-size: 1.3rem;
  padding: 24px 0;
}
.popup .txt_wrap .box {
  padding: 8px 5px;
  border-radius: 5px;
  border: 1px solid #ddd;
  background: #f5f8fb;
  text-align: center;
  font-size: 1.6rem;
  color: #000;
}
.popup.t3 .txt_wrap {
  margin-top: 24px;
  font-size: 1.3rem;
}
.popup.t3 .txt_wrap p {
  padding-bottom: 1rem;
}
.popup.t3 p {
  word-break: keep-all;
}

/* Checkbox Custom */

.chk {
  display: block;
  position: relative;
  cursor: pointer;
  padding-left: 20px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  line-height: 1.2;
}
.chk.all {
  padding-left: 0;
  padding-right: 32px;
  font-size: 1.5rem;
  line-height: 24px;
  font-weight: 600;
}
.chk input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 16px;
  width: 16px;
  border: 1px solid #717171;
  border-radius: 4px;
}
.chk.all .checkmark {
  width: 24px;
  height: 24px;
  right: 0;
  left: unset;
  border: 1px solid #d4d7dc;
  background: #fff;
}
.chk input:checked ~ .checkmark {
  background-color: #00582c;
  border-color: #00582c;
}
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}
.chk input:checked ~ .checkmark:after {
  display: block;
}
.chk .checkmark:after {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 13px;
  height: 13px;
  background: transparent url(/dad_user/images/site/map/checkbox.svg) no-repeat
  center / 13px 13px;
}
.chk.all .checkmark:after {
  width: 18px;
  height: 18px;
  background: transparent url(/dad_user/images/site/map/checkbox.svg) no-repeat
  center / contain;
}
.chk:focus-within {
  outline: 2px dotted #000;
}

/* 버튼 체크박스 */

.btn_chk {
  position: relative;
  cursor: pointer;
}
.btn_chk input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.btn_chk .check {
  width: 100%;
  color: #2e3033;
  font-size: 1.5rem;
  display: inline-block;
  position: relative;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d4d7dc;
  border-radius: 8px;
  line-height: 1;
  transition: 0.2s;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.btn_chk input[type="checkbox"]:checked + .check {
  color: #fff;
  border: 1px solid var(--green);
  background: var(--green);
  font-weight: 600;
}
.chk.all:focus-within,
.btn_chk:focus-within {
  outline: 2px dashed red;
}

/* Click Elements */

.elements .hide {
  display: none;
}
.els.hide {
  display: none;
}
.elements .location_icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 26px;
  height: 26px;
  background: #1778cc;
  border-radius: 50%;
  border: 2px solid #fff;
  box-shadow: 0px 0px 15px #0089ff;
}
.elements .link_forest {
  position: absolute;
  top: 50%;
  left: 50%;
}
.elements .link_forest::after {
  content: "";
  position: absolute;
  bottom: -6px;
  left: 15px;
  width: 10px;
  height: 8px;
}
.ol-overlay-container .lf_wrap {
  position: relative;
  display: flex;
  align-items: center;
  gap: 5px;
  background: #fff;
  padding: 5px;
  border-radius: 5px;
  border: 1px solid var(--green);
  cursor: pointer;
}
.ol-overlay-container .img {
  position: relative;
  width: 28px;
  height: 28px;
  background-color: var(--green);
  background-image: url(/dad_user/images/site/map/ico_forest_link.png);
  background-repeat: no-repeat;
  background-position: center;
}
.ol-overlay-container .lf_wrap p {
  position: relative;
  font-size: 1.3rem;
}
.ol-overlay-container .lf_wrap .ico {
  display: block;
  width: 15px;
  height: 15px;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(/dad_user/images/site/map/ico_lf_arrow.png);
}
.link_forest.multi .lf_wrap .ico {
  background-image: url(/dad_user/images/site/map/ico_lf_multi.png);
}

.mo_multi_btn {
  display: none;
  position: absolute;
  bottom: 20px; /*margin-bottom: calc(env(safe-area-inset-bottom) + 15px);*/
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 360px;
  padding: 12px 0;
  text-align: center;
  color: #fff;
  font-size: 1.6rem;
  border-radius: 10px;
  background: var(--green);
  font-weight: 600;
}

/* common dialog */
.common-dialog {
  font-family: inherit;
  font-size: 1.4rem;
}
.common-dialog .ui-dialog-titlebar {
  background-color: var(--green);
  padding: 1rem;
  border: 0;
  margin: -0.3rem -0.3rem 0 -0.3rem;
  color: #fff;
}
.common-dialog .ui-dialog-title {
  font-size: 1.8rem;
}
.common-dialog .ui-dialog-titlebar-close {
  border: 0;
  background-color: transparent;
  color: #fff;
  font-size: 1.8rem;
}

.dark-theme .common-dialog{
  background-color: var(--dark-bg-primary);
  border-color: var(--dark-bg-primary);
  color : var(--dark-text-primary) !important;
}

.dark-theme .fs-2 > b {
  color : var(--dark-text-primary);
}

.btn-popForestManagePlan {
  font-size: 1.4rem;
  padding: 6px 13px 6px 10px;
  border: 1px solid #d8dade;
  border-radius: 5px;
}
.pop_head > .row > * {
  width: auto;
}

/* 주소 검색 */
#showAddressPopupBtn {
  position: relative;
  padding: 13px 15px;
  border: 1px solid var(--green);
  border-radius: 5px;
  color: var(--green);
  font-weight: 500;
  font-size: 1.8rem;
  white-space: nowrap;
  line-height: 1;
}
#showAddressPopupBtn:hover,
#showAddressPopupBtn.active {
  background-color: var(--green);
  color: #fff;
}
/* 주소검색 end */
/* 주소검색 팝업 */
#addressPopup {
  position: absolute;
  top: 80px;
  left: 20px;
  bottom: 40px;
  max-width: 380px;
  width: 100%;
  background-color: #ffffff;
  border-radius: 8px;
  font-size: 1.4rem;
  overflow: hidden;
}
.popup-head {
  display: flex;
  align-items: center;
  height: 54px;
  padding: 0 16px;
}
.popup-head .btn-close {
  color: #000;
  margin-left: auto;
}
.popup-title {
  margin: 0;
  color: #000;
}
.popup-body {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  height: calc(100% - 54px);
  background-color: #eee;
  padding: 1rem;
}
#addressPopup .btn-collapse {
  background-color: transparent;
  transform: rotate(180deg);
  transition: 0.2s;
}
#addressPopup .btn-collapse.active {
  background-color: transparent;
  transform: rotate(0);
  transition: 0.2s;
}
.search-form {
  flex: 0 0 auto;
  padding: 8px;
  background: #fff;
  border-radius: 8px;
}
.search-form .input-group {
  border: 1px solid #d4d7dc;
  border-radius: 8px;
  font-size: 1.8rem;
  overflow: hidden;
}
.search-form .input-group input {
  flex: 1;
  padding-left: 8px;
  border: none;
  outline: none;
}
.search-form .input-group button {
  width: 40px;
}
.search-form .input-group .btn-remove {
  display: none;
  background-color: transparent;
}
.search-results {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  padding: 8px;
  background-color: #fff;
  border-radius: 8px;
  overflow-y: auto;
}
#jibunSearchForm input,
#jibunSearchForm select,
.search-form button {
  height: 32px;
  font-size: 1.5rem;
}
#jibunSearchForm .btn-check + label {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  font-size: 1.5rem;
}
.search-results .nav {
  padding: 4px;
  background-color: #e1e1e5;
  border-radius: 4px;
}
.search-results .nav-link {
  font-size: 1.6rem;
  height: 32px;
  color: var(--green);
}
.search-results .nav-pills .nav-link.active,
.search-results .nav-pills .show > .nav-link {
  background-color: var(--green);
}
#addressPopup .btn-reset {
  height: 28px;
  font-size: 1.3rem;
  border-radius: 4px;
}
#addressPopup .search-result-pane-list-item {
  cursor: pointer;
}
#addressPopup .search-result-pane-list-item:hover,
#addressPopup .search-result-pane-list-item.active {
  background-color: var(--bs-secondary-bg-subtle);
}
#addressPopup .search-result-pane-list-item:last-child {
  border-bottom: var(--bs-border-width) var(--bs-border-style)
  var(--bs-border-color) !important;
}

/* 주소검색 팝업 end*/
/*=========== 미디어쿼리 ===========*/

@media screen and (max-width: 1540px) {
  #header .kofpi_logo {
    display: none;
  }

  #header .left {
    gap: 20px;
  }

  #header .menu ul {
    gap: 10px;
  }

  #header .menu ul li a {
    font-size: 1.6rem;
    padding: 10px 10px 10px 30px;
  }

  #header .menu ul li a::after {
    width: 15px;
    height: 15px;
    left: 10px;
    background-size: contain;
  }
  #header .menu ul li i {
    width: 15px;
    height: 15px;
    left: 10px;
    font-size: 15px;
  }

  #header .mo_top {
    display: flex;
    align-items: center;
  }
  #showAddressPopupBtn {
    padding: 8.5px;
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 1200px) {
  .m_show {
    display: none;
  }
}

@media screen and (max-width: 1200px) {
  .desktopShow {
    display: none;
  }

  #header .menu {
    display: none;
  }

  #header .right {
    display: none;
  }

  .mo_menu {
    display: block;
  }

  .popup.t2 {
    width: calc(100% - 110px);
  }

  #multi_link_forest {
    display: none;
  }

  .bt_wrap {
    display: none;
  }

  .analyze_pop .info_box {
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
  }

  .analyze_pop .info_box .box_wrap {
    border: 1px solid #d9d9d9;
  }

  /*.mo_multi_btn{display: block;}*/
  /*.address_txt{bottom: 80px;}*/
}

@media screen and (max-width: 900px) {
  .popup.t1 {
    max-width: 100%;
    height: calc(100% - 60px);
    top: 60px;
    left: 0;

    border-radius: 0;
    border-top: 1px solid #efefef;
  }

  #search_address,
  #bookmark_pop,
  #my_mnt_result {
    height: calc(100% - 60px);
  }

  #bookmark_pop .pop_body,
  #search_address .pop_body,
  #my_mnt_result .pop_body {
    background: #fff;
  }

  .popup.t3 {
    max-width: 100%;
    height: calc(100% - 60px);
    top: 60px;
    left: 0;
    border-radius: 0;
    border-top: 1px solid #efefef;
  }

  .popup.t3 .pop_close_btn {
    display: block;
  }

  .tb_acco .acco_body .info_item {
    line-height: 2.5;
  }
  .tb_acco .link_btn {
    position: static;
    float: right;
    transform: unset;
    padding: 5px 8px;
    margin-right: 5px;
  }
  .tb_acco .link_btn::after {
    clear: both;
  }
  .tb_acco .acco_head a {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 830px) {
  .analyze_pop .pop_head {
    height: auto;
    padding: 45px 10px 5px 10px;
    /*justify-content: start;*/
    gap: 10px;
  }
  .analyze_pop .pop_head .bookmark {
    position: absolute;
    right: 50px;
    top: 11px;
  }
  .analyze_pop .az_inner_pop .pop_head {
    flex-direction: row;
    padding: 20px;
  }

  .analyze_pop .pop_head .util {
    margin-left: auto;
  }
  .analyze_pop .pop_head .row {
    padding: 0 10px;
    margin-top: 45px;
    justify-content: start;
  }
  .analyze_pop.multi .pop_head .lf_multi_tabs {
    order: 2;
    height: 32px;
    overflow-x: auto;
  }
  .analyze_pop .pop_head .lf_multi_tabs li a {
    font-size: 1.4rem;
    height: 100%;
  }
}

@media screen and (max-width: 768px) {
  #header .search_wrap input {
    font-size: 1.6rem;
  }
  .analyze_pop .txt_cont {
    padding: 20px;
  }

  .analyze_pop .txt_cont .cont.t1 {
    row-gap: 20px;
    column-gap: 10px;
    justify-content: unset;
  }

  .analyze_pop .txt_cont .cont li .tit {
    font-size: 1.6rem;
  }

  .analyze_pop .txt_cont .cont.t1 li .tit {
    white-space: nowrap;
  }

  .analyze_pop .txt_cont .cont.t1 li {
    width: calc(33.3333% - 10px);
    gap: 10px;
  }

  .analyze_pop .txt_cont .cont .box {
    width: 100%;

    min-width: unset;
    padding: 8px 10px;
    text-align: left;
  }

  .analyze_pop .txt_cont .cont .desc {
    flex: 1;
  }

  .analyze_pop .txt_cont .cont.t2 li {
    flex-direction: column;
  }

  .analyze_pop .txt_cont .cont.t2 .tit::after {
    display: none;
  }

  .analyze_pop .txt_cont .cont.t2 .desc {
    width: 100%;
    padding-left: 0;
    margin-top: 12px;
  }

  .analyze_pop .txt_cont .cont_tit {
    padding-top: 0;
  }

  .az_inner_pop {
    width: calc(100% - 60px);
  }

  .ol-zoom {
    top: 390px;
  }
  .ol-touch .ol-zoomslider,
  .ol-zoomslider {
    top: 448px;
  }
  .analyze_pop .pop_head .util .close {
    right: 16px;
  }
  .ol-zoom {
    height: auto;
    background: transparent;
    border: 0;
    right: 20px;
  }
  .ol-zoomslider {
    display: none;
  }
  .ol-zoom .ol-zoom-out {
    margin-top: 0;
  }
  .ol-control button {
    height: 48px;
    border: 1px solid #d8dade;
  }
  .ol-zoom .ol-zoom-in {
    border-radius: 5px 5px 0 0;
    border-bottom: 0;
  }
  .ol-zoom .ol-zoom-out {
    border-radius: 0 0 5px 5px;
  }
  .ol-touch .ol-control button {
    font-size: 20px;
  }
  .ol-control {
    border: 0;
  }

  .right_btn_wrap .btn_wrap {
    width: 48px;
  }

  #addressPopup {
    top: 60px;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: none;
    border-radius: 0;
  }
}
.custom-tooltip {
  --bs-tooltip-bg: var(--green);
  --bs-tooltip-color: #fff;
  --bs-tooltip-font-size: 1.6rem;
  word-break: keep-all;
}
@media screen and (min-width: 768px) {
  .btn.location {
    display: none;
  }
}

@media screen and (max-width: 640px) {
  .map_copyright {
    font-size: 1rem;
  }
  .m_hide {
    display: none;
  }

  #header {
    /*height: 96px;*/
    padding: 12px 16px;
  }

  /*#container {*/
  /*  height: calc(100dvh - 96px);*/
  /*}*/

  /*.map {*/
  /*  margin-top: 96px;*/
  /*}*/

  #header .logo {
    width: 90px;
    height: 24px;
    background-size: contain;
  }

  #header .left {
    width: 100%;
    height: 100%;
    /*flex-direction: column;*/
    /*gap: unset;*/
    /*justify-content: space-between;*/
    /*align-items: baseline;*/
    align-items: center;
  }

  #header .search_wrap {
    width: 100%;
    height: 36px;
    flex: unset;
  }

  #header .menu_bar {
    top: 24px;
  }

  .top_wrap {
    flex-direction: column;
    align-items: end;
    gap: 8px;
    top: 10px;
    right: 10px;
  }

  .top_wrap > .btn {
    position: relative;
    width: 40px;
    height: 40px;
    text-align: center;
    background: #fff;
    border: 1px solid #d8dade;
    white-space: nowrap;
  }

  .top_wrap > .btn span {
    padding: 0;
    background: transparent;
    color: #454545;
    font-size: 0.8rem;
    padding-top: 26px;
  }

  .top_wrap > .btn::after {
    content: "";
    position: absolute;
    top: 4px;
    left: 50%;
    transform: translateX(-50%);
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
  }

  .top_wrap .map_cadastral {
    order: 3;
  }

  .top_wrap .map_cadastral.on {
    background: #21396c;
  }



  .top_wrap .map_cadastral::after {
    background-image: url(/dad_user/images/site/map/ico_cadastral_map.svg);
  }

  .top_wrap .map_cadastral.on::after {
    background-image: url(/dad_user/images/site/map/ico_cadastral_map_on.svg);
  }

  .top_wrap .map_list::after {
    background-image: url(/dad_user/images/site/map/ico_map_list.svg);
  }

  .top_wrap .map_list.on {
    background: var(--green);
  }

  .top_wrap .map_list.on::after {
    background-image: url(/dad_user/images/site/map/ico_map_list_on.svg);
  }

  .top_wrap .map_cadastral.on span,
  .top_wrap .map_list.on span {
    background: transparent;
  }

  .top_wrap .toggle_btn_wrap .btn {
    font-size: 1.4rem;
  }

  .right_btn_wrap .btn_wrap {
    width: 40px;
  }
  .right_btn_wrap .btn {
    width: 40px;
    height: 40px;
    font-size: 0.9rem;
  }
  .right_btn_wrap .btn.magnifier {
    display: none;
  }
  .right_btn_wrap .btn .ico {
    width: 16px;
    height: 16px;
  }
  .right_btn_wrap .location {
    background-size: 60%;
  }

  .dark-theme .right_btn_wrap .location {
    background-size: 60% !important;
  }

  .map_list_wrap {
    top: -115px;
    right: 65px;
    padding: 0;
    width: 186px;
  }

  .map_list_wrap .top {
    padding: 8px 10px;
  }

  .map_list_wrap .top strong {
    font-size: 1.2rem;
    padding-right: 20px;
  }

  .map_list_wrap .top strong::after {
    width: 12px;
    height: 12px;
  }

  .map_list_wrap .ml_cont {
    padding: 12px;
  }

  .map_list_wrap .map_list.dep1 .more_btn {
    width: 14px;
    height: 14px;
  }

  .map_list_wrap .map_list.dep1 .more_btn::before {
    width: 8px;
    height: 1px;
  }

  .map_list_wrap .map_list.dep1 .more_btn::after {
    height: 8px;
    width: 1px;
  }

  .right_wrap {
    top: 145px;
    right: 10px;
  }

  .checkmark {
    width: 14px;
    height: 14px;
  }

  .map_list_wrap .chk {
    padding-left: 18px;
    font-size: 1.1rem;
  }

  .map_list_wrap .ui-slider {
    height: 0.8rem;
  }

  .map_list_wrap .ui-slider-horizontal .ui-slider-handle {
    top: -2px;
    width: 12px;
    height: 12px;
  }

  .map_list_wrap .map_list.dep2 {
    margin-top: 0;
  }

  .map_list_wrap .map_list.dep2 li {
    font-size: 1rem;
  }

  .map_list_wrap .map_list.dep2 .co_box {
    width: 10px;
    height: 10px;
    margin-right: 6px;
  }

  .popup.t2 {
    top: 116px;
    left: 8px;
    right: 8px;
    width: calc(100% - 16px);
  }

  .popup.t2 .pop_head {
    padding: 5px 10px;
  }

  #slope_pop .pop_head strong {
    padding-left: 20px;
    font-size: 1.4rem;
  }

  .popup.t2 .pop_head .pop_close_btn {
    width: 1.5rem;
    height: 1.5rem;
    background-size: 80%;
  }

  #slope_pop .pop_body {
    padding: 15px;
  }

  /*.popup.t1,*/
  /*.popup.t3 {*/
  /*  top: 96px;*/
  /*  height: calc(100% - 96px);*/
  /*}*/

  /*#search_address,*/
  /*#bookmark_pop,*/
  /*#my_mnt_result {*/
  /*  height: calc(100% - 96px);*/
  /*}*/

  .popup.t1 .pop_head strong {
    font-size: 1.6rem;
  }

  .popup.t1 .pop_head .pop_close_btn {
    width: 18px;
    height: 18px;
    background-size: contain;
  }
  .analyze_pop .pop_head {
    gap: 5px;
    flex-wrap: wrap;
  }
  .analyze_pop .pop_head .left {
    gap: 4px;
  }
  .analyze_pop .pop_head .link_btn {
    font-size: 1.2rem;
    padding: 0 5px;
    height: 26px;
  }
  .analyze_pop .pop_head .util {
    gap: 4px;
  }
  .analyze_pop .pop_head .util .print_btn::after {
    display: none;
  }
  .analyze_pop .pop_head .util .print_btn {
    padding: 6px 10px 6px 22px;
    /* height: 26px; */
    align-content: center;
    font-size: 1.2rem;
    background-position: center left 5px;
    background-size: 12px 12px;
  }
  .analyze_pop .pop_head .link_btn::after {
    width: 12px;
    height: 12px;
  }

  .analyze_pop .img_wrap .tit {
    height: auto;
    padding: 5px 0;
  }

  .analyze_pop .img_wrap .tit p {
    font-size: 1.4rem;
    line-height: 20px;
  }

  .analyze_pop .tab_container .tabs li a {
    font-size: 1.6rem;
  }

  .analyze_pop .swiper-slide {
    width: auto;
  }

  .analyze_pop .swiper-slide a {
    font-size: 1.4rem;
    padding: 0 10px;
  }

  .analyze_pop .in_tabs a {
    font-size: 1.4rem;
  }

  .analyze_pop .sl_tab_cont table th,
  .analyze_pop .sl_tab_cont table td {
    font-size: 1.2rem;
  }

  .analyze_pop .sl_tab_cont table .tb_btn {
    font-size: 1.2rem;
  }

  .analyze_pop .sl_tab_cont table th {
    height: 36px;
  }

  .analyze_pop .sl_tab_cont table td {
    padding: 8px 0;
  }

  .analyze_pop .sl_tab_cont table .tb_btn {
    padding: 3px 10px;
    white-space: nowrap;
  }

  .analyze_pop .sl_tab_cont .source span {
    font-size: 1rem;
    padding: 2px 2px 4px 16px;
    background-size: 14px 16px;
    line-height: 1.2;
  }

  .analyze_pop .sl_tab_cont .txt_wrap p {
    font-size: 1.2rem;
  }

  .mw960 {
    min-width: 960px;
  }

  .analyze_pop .txt_cont .item {
    padding: 24px 0;
    margin-bottom: 0;
  }

  .analyze_pop .txt_cont .cont_tit {
    font-size: 1.7rem;
    padding-left: 12px;
  }

  .analyze_pop .txt_cont .cont_tit::before {
    width: 4px;
    height: 12px;
    top: 10px;
  }

  .analyze_pop .txt_cont .cont_tit .info_btn {
    padding: 4px 20px;
    font-size: 1.3rem;
  }

  .analyze_pop .tb_wrap table th,
  .analyze_pop .tb_wrap table td {
    font-size: 1.2rem;
    padding: 8px 2px;
  }

  .analyze_pop .tb_info_txt strong {
    font-size: 1.3rem;
  }

  .analyze_pop .tb_info_txt .txt p {
    font-size: 1.4rem;
    padding-bottom: 10px;
  }

  .analyze_pop .txt_cont .cont {
    margin-top: 12px;
  }

  .analyze_pop .txt_cont .cont.t1 li {
    width: calc(50% - 10px);
  }

  .analyze_pop .txt_cont .cont li .tit {
    font-size: 1.5rem;
  }

  .analyze_pop .txt_cont .cont .box {
    padding: 5px;
    font-size: 1.5rem;
  }

  .analyze_pop .info_tb th,
  .analyze_pop .info_tb td {
    font-size: 1.4rem;
  }
  .analyze_pop .pop_head .row {
    gap: 5px;
  }

  .analyze_pop .az_inner_pop .pop_head {
    padding: 10px 15px;
  }

  .az_inner_pop .pop_head strong {
    font-size: 1.6rem;
  }

  .az_inner_pop .pop_head .close_btn {
    width: 15px;
    height: 15px;
    background-size: contain;
  }

  .az_inner_pop .pop_body .cont {
    margin-bottom: 20px;
  }

  .az_inner_pop .pop_body .cont strong,
  .az_inner_pop .pop_body .cont ul li {
    font-size: 1.4rem;
  }

  .az_inner_pop .pop_body .cont ul li {
    margin-bottom: 8px;
  }

  .az_inner_pop .pop_body .cont strong {
    padding-bottom: 10px;
  }

  .az_inner_pop .pop_body .cont ul li::after {
    top: 7px;
  }

  .analyze_pop .pop_head .lf_multi_tabs li a {
    font-size: 1.1rem;
    padding: 0 8px;
  }

  .address_txt {
    font-size: 1.2rem;
    padding: 8px 14px 6px 14px;
  }
  .device_label {
    font-size: 1.1rem;
    padding: 5px 10px;
  }

  .ol-zoom {
    right: 10px;
    top: 413px;
  }
  .ol-touch .ol-zoomslider,
  .ol-zoomslider {
    top: 542px;
  }

  .analyze_pop .info_box {
    width: 100%;
  }
  .analyze_pop .info_box .box_wrap {
    width: calc(100% - 40px);
    margin: 0 auto;
  }
  .analyze_pop .tb_wrap table th .info_key_btn {
    width: 12px;
    height: 12px;
    background-size: contain;
  }
  .analyze_pop .info_box .tit {
    font-size: 1.4rem;
    background-size: 1.6rem;
    padding-left: 20px;
  }
  .analyze_pop .info_box .desc {
    font-size: 1.4rem;
  }
  .mo_multi_btn {
    font-size: 1.4rem;
    width: calc(100% - 40px);
    max-width: 200px;
  }
  .ol-zoom {
    width: 40px;
  }
  .ol-control button {
    height: 40px;
  }

  .analyze_pop .sl_tab_cont {
    padding: 0;
  }
  .analyze_pop .tab_slide {
    padding: 0;
  }
  .analyze_pop .info_tabs li a {
    font-size: 1.2rem;
  }

  .btn-popForestManagePlan {
    font-size: 1.2rem;
    padding: 6px 13px 6px 10px;
  }
}
@media screen and (max-width: 485px) {
  .analyze_pop .pop_head .left {
    padding: 0;
  }
  .analyze_pop .pop_head .util {
    padding: 0;
    margin: 0;
  }
}

/** 20251204 조건 변경 */

/* 기존 팝업 크기 유지 및 내부 스크롤 처리 */
#my_mnt .pop_body {
  padding: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* 1. Stepper */
#my_mnt .mnt-stepper {
  background: #fff;
  border-bottom: 1px solid #eee;
  padding: 15px 10px;
}
#my_mnt .step-list {
  display: flex;
  justify-content: space-around;
  list-style: none;
  margin: 0;
  padding: 0;
}
#my_mnt .step-item {
  font-size: 1.6rem;
  color: var(--black);
  font-weight: bold;
  position: relative;
  padding-bottom: 5px;
  cursor: pointer;
}
#my_mnt .step-item.active {
  color: #2e7d32;
  border-bottom: 2px solid #2e7d32;
}

#my_mnt .mnt-region-summary {
  margin: 10px 15px 0;
  padding: 10px 15px;
  background: #fffef5;
  border: 1px solid #f8e6b7;
  border-radius: 6px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  font-size: 13px;
}
#my_mnt .mnt-region-summary .summary-label {
  font-weight: 600;
  color: #555;
}
#my_mnt .mnt-region-summary .summary-values {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-weight: 600;
  color: #2e7d32;
}
#my_mnt .mnt-region-summary .value {
  color: #17a795;
}
#my_mnt .mnt-region-summary .value.is-empty {
  color: #232323;
  font-weight: 400;
}
#my_mnt .mnt-region-summary .divider {
  color: #ccc;
  font-weight: 400;
}

/* 2. 필터 배지 영역 */
#my_mnt .mnt-filter-view {
  background: #f8f9fa;
  padding: 10px 15px 6px;
  border-bottom: 1px solid #eee;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
#my_mnt .badge-collapse-body {
  width: 100%;
  max-height: 2.4rem;
  overflow: hidden;
  transition: max-height 0.25s ease;
}
#my_mnt .badge-collapse-body.expanded {
  max-height: none;
}
#my_mnt .placeholder {
  font-size: 12px;
  color: #999;
  width: 100%;
  text-align: left;
  margin-bottom: 4px;
}
#my_mnt .badge-group {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
#my_mnt .badge-toggle {
  align-self: flex-end;
  font-size: 12px;
  color: #2e7d32;
  background: none;
  border: none;
  cursor: pointer;
  display: none;
  padding: 0;
}
#my_mnt .badge-toggle.visible {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

/* 태그(Chip) 배지 디자인 */
#my_mnt .filter-tag {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  background: #fff;
  color: #2e7d32;
  border-radius: 15px;
  font-size: 1.3rem;
  font-weight: bold;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
#my_mnt .filter-tag {
  cursor: pointer;
  transition: background-color 0.2s, transform 0.1s;
}
#my_mnt .filter-tag:hover {
  background-color: #e8f5e9;
  transform: scale(1.02);
}
#my_mnt .filter-tag i {
  margin-left: 5px;
  font-style: normal;
}

/* 3. 컨텐츠 영역 */
#my_mnt .mnt-content-wrap {
  flex: 1;
  overflow-y: auto;
  padding: 20px;
}
#my_mnt .step-pane {
  display: none;
}
#my_mnt .step-pane.active {
  display: block;
  animation: fadeEffect 0.3s;
}

/* Step 1 Select 박스 스타일 보정 */
#my_mnt .select_wrap .item {
  margin-bottom: 15px;
}
#my_mnt .select_wrap .tit {
  font-size: 13px;
  margin-bottom: 5px;
  font-weight: bold;
  color: #555;
}
#my_mnt .custom-select {
  width: 100%;
  padding: 8px;
  border: 1px solid #ddd;
  border-radius: 4px;
}

/* Step 2~4 그룹 타이틀 & 태그 클라우드 */
#my_mnt .group-sec {
  margin-bottom: 25px;
}
#my_mnt .group-tit {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 10px;
  display: block;
  color: #333;
}

#my_mnt .chip-container {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

/* 선택용 태그(Chip) 버튼 */
#my_mnt .choice-chip {
  padding: 8px 14px;
  background: #f0f0f0;
  color: var(--black);
  border: 1px solid transparent;
  border-radius: 20px; /* 둥글게 */
  font-size: 13px;
  cursor: pointer;
  transition: 0.2s;
}
/* 선택되었을 때 */
#my_mnt .choice-chip.selected {
  background: #e8f5e9;
  color: #2e7d32;
  border-color: #2e7d32;
  font-weight: bold;
}

/* 4. 하단 버튼 */
#my_mnt .pop_foot {
  padding: 15px;
  border-top: 1px solid #ddd;
}
#my_mnt .btn_wrap {
  display: flex;
  gap: 8px;
}
#my_mnt .btn_prev,
#my_mnt .btn_next {
  flex: 1;
  height: 40px;
  border: none;
  border-radius: 4px;
  font-size: 14px;
  cursor: pointer;
  font-weight: bold;
}
#my_mnt .btn_prev {
  background: #eee;
  color: #555;
}
#my_mnt .btn_next {
  background: #2e7d32;
  color: #fff;
}
#my_mnt .btn_prev:disabled {
  opacity: 0.5;
  cursor: default;
}

@keyframes fadeEffect {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* 다크 테마 */
.dark-theme {
  /* Backgrounds */
  --dark-bg-primary: #121212; /* Main background */
  --dark-bg-secondary: #1e1e1e; /* Secondary/Card background */
  --dark-bg-tertiary: #2a2a2a; /* Tertiary/Hover background */

  /* Text Colors */
  --dark-text-primary: #e0e0e0; /* Main text color */
  --dark-text-secondary: #b0b0b0; /* Secondary text color */

  /* Borders/Separators */
  --dark-border-color: #3d3d3d;

  /* UI Colors - Keeping primary color (green) consistent for highlighting */
  --bs-primary: var(--green); /* Keep green as primary highlight */
  --dark-green: var(--green); /* Assuming existing --green is acceptable */
}

/* --- DARK THEME STYLES --- */

/* Global and Layout */
.dark-theme #wrap,
.dark-theme .map,
.dark-theme .mapScreenshot {
  background: var(--dark-bg-primary) !important;
  color: var(--dark-text-primary);
}
.dark-theme a {
  color: var(--dark-text-primary);
}

/* Header */
.dark-theme #header {
  background: var(--dark-bg-secondary);
  border-bottom: 1px solid var(--dark-border-color);
}

/* Search Wrap in Header */
.dark-theme #header .search_wrap {
  border-color: var(--dark-border-color);
  background: var(--dark-bg-tertiary);
}
.dark-theme #header .search_wrap input {
  color: var(--dark-text-primary);
  /* The search icon is an image, so it might need an SVG filter override
       if a dark version of the image is not available:
       .dark-theme #header .search_wrap .search_btn { filter: invert(1); }
    */
}
.dark-theme #header .search_wrap.active {
  background: var(--dark-bg-secondary);
  border-color: var(--dark-green);
}

/* Header Menu Links */
.dark-theme .menu ul li a {
  color: var(--dark-text-primary);
  background: transparent;
}
.dark-theme .menu ul li.on a,
.dark-theme .menu ul li a:hover {
  background: var(--dark-green);
  color: #fff;
}
/* Login Button */
.dark-theme .login_btn {
  background-color: var(--dark-bg-tertiary);
  border-color: var(--dark-green);
  color: var(--dark-text-primary);
  /* Icon filter might be needed here too */
}
.dark-theme .login_btn:hover {
  background-color: var(
          --dark-bg-tertiary
  ); /* Lighter hover color in dark mode */
}
.dark-theme #header .hd_mo_tit {
  border-left-color: var(--dark-border-color);
  color: var(--dark-text-primary);
}
.dark-theme .mo_menu .menu_wrap {
  background: var(--dark-bg-secondary);
}

/* Map Overlays/Controls */
.dark-theme .map_copyright {
  color: var(--dark-text-primary);
}

/* Top Right Buttons (Toggle, Cadastral, List) */
.dark-theme .top_wrap .toggle_btn_wrap {
  background: var(--dark-bg-secondary);
  border: 1px solid var(--dark-border-color);
}
.dark-theme .top_wrap .toggle_btn_wrap .btn {
  color: var(--dark-text-secondary);
}
.dark-theme .top_wrap .toggle_btn_wrap .btn.active {
  background: var(--green);
  color: #fff;
}
.dark-theme .top_wrap .map_cadastral,
.dark-theme .top_wrap .map_list {
  background: var(--dark-bg-secondary);
  border: 1px solid var(--dark-border-color);
}
.dark-theme .top_wrap > .btn > span {
  color: var(--dark-text-primary);
  background: var(--dark-bg-primary);
}
.dark-theme .top_wrap .map_cadastral.on,
.dark-theme .top_wrap .map_list.on {
  background: var(--green);
  border-color: var(--green);
}
.dark-theme .top_wrap .map_cadastral.on span,
.dark-theme .top_wrap .map_list.on span {
  color: #fff;
  background: transparent;
}

/* Right Side Button Wrap */
.dark-theme .right_btn_wrap .btn_wrap {
  background: var(--dark-bg-secondary);
  border-color: var(--dark-border-color);
}
.dark-theme .right_btn_wrap .btn {
  background: var(--dark-bg-secondary);
  border-bottom-color: var(--dark-border-color);
  color: var(--dark-text-secondary);
}
.dark-theme .right_btn_wrap .btn.on {
  background-color: var(--dark-green);
  color: #fff;
}
.dark-theme .right_btn_wrap .location {
  background: var(--dark-bg-secondary);
  border-color: var(--dark-border-color);
  filter: brightness(1.5);
}

.dark-theme .dark-theme .right_btn_wrap .btn{
  background: var(--dark-bg-secondary);
  border-color: var(--dark-border-color);
  color: var(--dark-text-secondary);
}

/* Map List Popup */
.dark-theme .map_list_wrap .top {
  background: var(--dark-green); /* Keep green header */
  color: #fff;
}
.dark-theme .map_list_wrap .ml_cont {
  background: var(--dark-bg-secondary);
}
.dark-theme .map_list_wrap .chk {
  color: var(--dark-text-primary);
}

/* OL Controls (Zoom/Slider) */
.dark-theme .ol-zoom {
  filter: invert(1);
}

.dark-theme .ol-control:hover {
  background-color: var(--dark-bg-tertiary);
}

/* Popups/Modals (t1, t3, analyze_pop, etc.) */
.dark-theme .popup.t1,
.dark-theme .popup.t3,
.dark-theme #addressPopup {
  background: var(--dark-bg-secondary);
  border: 1px solid var(--dark-border-color);
}
.dark-theme .popup-head {
  background: var(--dark-bg-secondary);
}
.dark-theme .popup-head .btn-close {
  color: var(--dark-text-primary);
  filter: invert(1);
}
.dark-theme .popup-title,
.dark-theme .popup.t1 .pop_head strong,
.dark-theme .popup.t3 .pop_head strong {
  color: var(--dark-text-primary);
}
.dark-theme .popup.t1 .pop_body,
.dark-theme .popup.t3 .pop_body,
.dark-theme .search-results {
  background: var(--dark-bg-secondary);
}
.dark-theme .popup.t1 .pop_body ul li {
  color: var(--dark-text-primary);
}
.dark-theme .popup.t1 .pop_body ul li .del_btn {
  background-color: var(--dark-bg-tertiary);
  /* Icon filter might be needed */
}

/* Analyze Popup */
.dark-theme .analyze_pop .pop_wrap .pop_box {
  background: var(--dark-bg-secondary);
}
.dark-theme .analyze_pop .img_wrap .tit {
  background: var(--dark-bg-secondary);
  border-bottom-color: var(--dark-border-color);
  border-top-color: var(--dark-border-color);
}
.dark-theme .analyze_pop .img_wrap .tit p {
  color: var(--dark-text-primary);
}

/* Table styles inside Popups */
.dark-theme .analyze_pop .tb_wrap table tbody {
  border-top-color: var(--dark-border-color);
  border-left-color: var(--dark-border-color);
}
.dark-theme .analyze_pop .tb_wrap table th,
.dark-theme .analyze_pop .tb_wrap table td {
  border-right-color: var(--dark-border-color);
  border-bottom-color: var(--dark-border-color);
  color: var(--dark-text-secondary);
}
.dark-theme .analyze_pop .tb_wrap table th {
  background: var(--dark-bg-tertiary);
}
.dark-theme .analyze_pop .tb_wrap table td {
  background: var(--dark-bg-secondary);
}
.dark-theme .analyze_pop .sl_tab_cont table thead th.red {
  background: #2a1010;
  border-top-color: #a70000;
}
.dark-theme .analyze_pop .sl_tab_cont table thead th.blue {
  background: #0d2836;
  border-top-color: #028edd;
}

/* Inner Popups/Info Boxes */
.dark-theme .az_inner_pop {
  background: var(--dark-bg-secondary);
}
.dark-theme .az_inner_pop .pop_head {
  border-bottom-color: var(--dark-border-color);
}
.dark-theme .az_inner_pop .pop_head strong {
  color: var(--dark-text-primary);
}

/* Checkboxes & Buttons */
.dark-theme .btn_chk .check {
  background: var(--dark-bg-tertiary);
  border-color: var(--dark-border-color);
  color: var(--dark-text-secondary);
}
.dark-theme .btn_chk input[type="checkbox"]:checked + .check {
  background: var(--dark-green);
  border-color: var(--dark-green);
  color: #fff;
}
.dark-theme .my_mnt .mnt-region-summary {
  background: #232014; /* Darker yellow hint */
  border-color: #555529;
}
.dark-theme .my_mnt .mnt-filter-view {
  background: var(--dark-bg-primary);
  border-bottom-color: var(--dark-border-color);
}
.dark-theme .my_mnt .filter-tag {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-primary);
}
.dark-theme .my_mnt .filter-tag:hover {
  background: var(--dark-bg-secondary);
}
.dark-theme .my_mnt .group-tit {
  color: var(--dark-text-primary);
}
.dark-theme .my_mnt .choice-chip {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-secondary);
}
.dark-theme .my_mnt .choice-chip.selected {
  background: #183318;
  border-color: #4a8d4d;
  color: #fff;
}
.dark-theme .my_mnt .btn_prev {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-primary);
}

.dark-theme #header .kofpi_logo {
  width: 180px;
  height: 43px;
  background: url(/dad_user/assets/images/common/kofpi_logo_white.svg) no-repeat
  center;
  background-size : cover;
}

.dark-theme .popup .select_wrap .select {
  color: var(--bs-gray-300);
  background: var(--dark-bg-secondary);
}

.dark-theme #my_mnt .mnt-stepper {
  background: var(--dark-bg-primary);
}

.dark-theme #my_mnt .select_wrap .tit {
  color: var(--dark-text-primary);
}

.dark-theme #my_mnt .group-tit {
  color: var(--dark-text-primary);
}

.dark-theme #my_mnt .choice-chip {
  background: var(--green);
  color: var(--bs-gray-200);
}

.dark-theme #my_mnt .mnt-filter-view {
  background: var(--dark-bg-secondary);
}

.dark-theme #header .menu_bar,
.dark-theme .popup.t3 .pop_close_btn {
  filter: invert(1);
}

.dark-theme .search-form {
  background: var(--dark-bg-secondary);
}

.dark-theme .popup-body {
  background: var(--dark-bg-primary);
}

.dark-theme .right_btn_wrap .location {
  background: var(--dark-bg-primary)
  url(/dad_user/images/site/map/ico_location.svg) no-repeat center;
}

.dark-theme .my_mnt .btn_wrap {
  background: var(--dark-bg-primary);
}

.dark-theme .popup.t1{
  background : var(--dark-bg-primary);
  color : var(--dark-text-primary);
}

.dark-theme .popup.t1 .pop_body ul{
  background : var(--dark-bg-primary);
  color : var(--dark-text-primary);
}

.dark-theme .pop_body{
  background : var(--dark-bg-primary) !important;
  color : var(--dark-text-primary);
}

.dark-theme .my_mnt_result .pop_head{
  background: var(--dark-bg-primary);
}

.dark-theme .my_mnt_result thead th{
  background : var(--dark-bg-primary);
  color : var(--dark-text-primary);
}

.dark-theme .my_mnt_result .pop_foot{
  background : var(--dark-bg-primary);
}

.dark-theme .analyze_pop .txt_cont{
  background : var(--dark-bg-primary);
  color : var(--dark-text-primary);
}

.dark-theme .analyze_pop .tb_info_txt{
  background : var(--dark-bg-primary);
  color : var(--dark-text-primary);
}

.dark-theme .analyze_pop .txt_cont .cont .box{
  background-color: var(--dark-bg-secondary);
  color : var(--dark-text-primary);
}

.dark-theme .analyze_pop .tb_info_txt .txt p{
  color : var(--dark-text-primary);
}

.dark-theme .analyze_pop .info_tb th, .context_menu ul li a{
  color : black;
}

/* 필지분석 팝업 다크모드 추가 스타일 */
.dark-theme .analyze_pop .pop_head {
  background: var(--dark-bg-secondary);
  border-bottom: 1px solid var(--dark-border-color);
}

.dark-theme .analyze_pop .pop_head .left strong {
  color: var(--dark-text-primary);
}

.dark-theme .analyze_pop .pop_head .util .close {
  filter: invert(1);
}

.dark-theme .analyze_pop .pop_head .util .btn-popForestManagePlan {
  background: var(--dark-bg-tertiary);
  border-color: var(--dark-border-color);
  color: var(--dark-text-primary);
}

.dark-theme .analyze_pop .pop_head .util .btn-popForestManagePlan:hover {
  background: var(--dark-bg-primary);
}

/* 탭 스타일 */
.dark-theme .analyze_pop .tab_container .tabs {
  border-bottom-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .tab_container .tabs li a {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-secondary);
}

.dark-theme .analyze_pop .tab_container .tabs li.active a {
  background: var(--green);
  color: #fff;
}

/* 내부 탭 (나무정보, 토양정보 등) */
.dark-theme .analyze_pop .info_tabs {
  border-top-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .info_tabs li a {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-secondary);
  border-bottom-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .info_tabs li.active a {
  color: var(--dark-text-primary);
  background: var(--dark-bg-secondary);
}

/* 슬라이드 탭 컨텐츠 */
.dark-theme .analyze_pop .slide_wrap {
  background: var(--dark-bg-tertiary);
  border-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .sl_tab_cont table thead {
  border-top-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .sl_tab_cont table th {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-primary);
  border-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .sl_tab_cont table td {
  background: var(--dark-bg-secondary);
  color: var(--dark-text-secondary);
  border-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .sl_tab_cont .source span {
  color: var(--dark-text-secondary);
}

.dark-theme .analyze_pop .sl_tab_cont .txt_wrap p {
  color: var(--dark-text-primary);
}

.dark-theme .analyze_pop .sl_tab_cont .txt_wrap .box {
  background: var(--dark-bg-tertiary);
  border-color: var(--dark-border-color);
  color: var(--dark-text-primary);
}

/* in_tabs (내부 서브탭) */
.dark-theme .analyze_pop .in_tabs {
  border-bottom-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .in_tabs a {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-secondary);
}

.dark-theme .analyze_pop .in_tabs .active a {
  background: #545454;
  color: #fff;
}

/* 다중필지 스타일 */
.dark-theme .analyze_pop .pop_head .lf_multi_tabs {
  border-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .pop_head .lf_multi_tabs li {
  border-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .pop_head .lf_multi_tabs li a {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-secondary);
}

.dark-theme .analyze_pop .pop_head .lf_multi_tabs li.on a {
  background: var(--green);
  color: #fff;
}

/* 정보 박스 */
.dark-theme .analyze_pop .info_box {
  background: var(--dark-bg-secondary);
  border-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .info_box .box_wrap {
  background: var(--dark-bg-secondary);
  border-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .info_box .tit {
  color: var(--dark-text-primary);
}

.dark-theme .analyze_pop .info_box .desc {
  border-top-color: var(--dark-border-color);
  color: var(--dark-text-secondary);
}

.dark-theme .analyze_pop .info_box .desc table thead {
  border-top-color: var(--dark-border-color);
}

.dark-theme .analyze_pop .info_box .desc table thead th {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-primary);
}

.dark-theme .analyze_pop .info_box .desc table th,
.dark-theme .analyze_pop .info_box .desc table td {
  border-bottom-color: var(--dark-border-color);
  color: var(--dark-text-secondary);
}

.dark-theme .analyze_pop .info_box .desc table td {
  background: var(--dark-bg-secondary);
}

.dark-theme .analyze_pop .info_box .box_close_btn {
  filter: invert(1);
}

.dark-theme .analyze_pop .info_box .source {
  color: var(--dark-text-secondary);
}

/* 탄소 관련 */
.dark-theme .analyze_pop .carbon_wrap {
  background: var(--dark-bg-secondary);
}

.dark-theme .analyze_pop .carbon_wrap .tit {
  color: var(--dark-text-primary);
}

.dark-theme .analyze_pop .carbon_wrap .desc {
  color: var(--dark-text-secondary);
}

.dark-theme .popup.t1 .pop_head .pop_close_btn{
  filter : invert(1);
}

.dark-theme .analyze_pop .tb_wrap {
  margin-top: 10px;
  background: #121212;
}

.dark-theme .tb_acco .acco_head a{
  color: var(--dark-text-primary);
  background-color: var(--dark-bg-secondary);
}

.dark-theme .analyze_pop .txt_cont .cont_tit .info_btn{
  color: var(--dark-text-primary);
}

.dark-theme .analyze_pop .txt_cont .cont li .tit::before{
  border-left-color: var(--dark-text-secondary);
}

.dark-theme .analyze_pop .txt_cont .cont_tit::before{
  background-color: var(--dark-text-secondary);
}
.dark-theme .analyze_pop .sl_tab_cont .table .item .tit,
.dark-theme .analyze_pop .info_tb th {
  background: var(--dark-bg-tertiary);
  color: var(--dark-text-primary);
  border-color: var(--dark-border-color);
}
.dark-theme .analyze_pop .sl_tab_cont .table .item .desc,
.dark-theme .analyze_pop .info_tb td {
  background: var(--dark-bg-secondary);
  color: var(--dark-text-secondary);
  border-color: var(--dark-border-color);
}

/* 다크모드 버튼 아이콘 흰색 처리 */
.dark-theme .analyze_pop .pop_head .util .print_btn {
  position: relative;
  background-image: none;
}

.dark-theme .analyze_pop .pop_head .util .print_btn::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background: url(/dad_user/images/site/map/ico_print.png) no-repeat center / contain;
  filter: invert(1);
}

/* 우클릭 컨텍스트 메뉴 다크모드 */
.dark-theme .context_menu {
  background: var(--dark-bg-secondary);
  border-color: var(--dark-border-color);
}

.dark-theme .context_menu ul li {
  border-bottom-color: var(--dark-border-color);
}

.dark-theme .context_menu ul li a {
  color: var(--dark-text-primary);
}

.dark-theme .context_menu ul li a:hover {
  background-color: var(--dark-bg-tertiary);
}

.dark-theme #slope_pop .pop_head{
  background: var(--dark-bg-secondary);
  color: var(--dark-text-primary);
}
.dark-theme .popup.t2 .pop_head .pop_close_btn{
  filter: invert(1);
}

.dark-theme #slope_pop .box{
  background-color: var(--dark-bg-secondary);
}
.dark-theme .mo_menu .menu_close{
  filter: invert(1);
}

.dark-theme .dialog--plan .btn-outline-secondary{
  border-color: var(--dark-text-primary);
  color: var(--dark-text-primary);
}

/* 가이드 박스 스타일 */
.guide-box {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 20px;
  padding: 16px;
  background: linear-gradient(135deg, #e8f5e9 0%, #f1f8e9 100%);
  border-left: 4px solid var(--green);
  border-radius: 8px;
}

.guide-box__icon {
  flex-shrink: 0;
  font-size: 24px;
  color: var(--green);
}

.guide-box__content {
  flex: 1;
}

.guide-box__title {
  font-size: 1.6rem;
  font-weight: 600;
  color: #2e7d32;
  margin-bottom: 6px;
}

.guide-box__desc {
  font-size: 1.4rem;
  color: #555;
  line-height: 1.5;
}

/* 다크모드 가이드 박스 */
.dark-theme .guide-box {
  background: linear-gradient(135deg, rgba(46, 125, 50, 0.15) 0%, rgba(56, 142, 60, 0.1) 100%);
  border-left-color: var(--green);
}

.dark-theme .guide-box__title {
  color: #81c784;
}

.dark-theme .guide-box__desc {
  color: var(--dark-text-secondary);
}