/*
Theme Name: Hello Elementor Child
Template: hello-elementor
*/

/* ===== Tooltip ========================================================== */
.tooltip {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.8);
  color: white;
  padding: 8px;
  border-radius: 4px;
  white-space: nowrap;
  z-index: 9999;
  display: none; /* 기본적으로 숨김 */
  transform: translateY(-10px);
  animation: fadeIn 0.2s ease-in-out;
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-20px); }
  to   { opacity: 1; transform: translateY(-10px); }
}

/* ===== 링크 색상 (전역 강제 X) ===================== */
/* 전역은 기본색을 사용하고, 본문/컨텐츠 영역에만 적용해 충돌 방지 */
main a,
.elementor-section a,
.woocommerce div.product .summary a {
  color:#3A89E4;
}
main a:hover,
.elementor-section a:hover,
.woocommerce div.product .summary a:hover {
  color:#3d3d3d;
}

/* 푸터는 Elementor 설정 존중 */
footer a {
  color: inherit !important;
}


/* ===== 상단 프로그레스 바 =============================================== */
#page-progress {
  position: fixed; top: 0; left: 0;
  height: 2px; width: 0;
  background: #7d7d7d;
  box-shadow: 0 1px 3px rgba(0,0,0,.08);
  opacity: 0; z-index: 10000;
  transition: width .2s ease, opacity .2s ease;
}
#page-progress.is-active { opacity: 1; }

/* ===== 헤더 / 내비 ======================================================= */
.elementor-location-header nav .menu-item.current-menu-item > a,
.elementor-location-header nav .menu-item.current-menu-ancestor > a,
.elementor-location-header nav .menu-item.current_page_ancestor > a {
  color:#3A89E4 !important;
  font-weight: 600 !important;
}
.elementor-location-header .elementor-swiper-button-next,
.elementor-location-header .elementor-swiper-button-prev {
  background-color: transparent !important;
}
@media (max-width:767px) {
  .elementor-location-header .bnav_bottom_nav_wrapper {
    border-left:0; border-right:0;
  }
}

/* ===== WooCommerce : Product Page ======================================= */
body.single-product .jet-woo-builder-single-ajax-add-to-cart form.cart {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}
body.single-product .jet-woo-builder-single-ajax-add-to-cart .single_add_to_cart_button {
  display: block !important;
  width: 100% !important;
  margin-left: 0 !important;
}
body.single-product .jet-woo-builder-single-ajax-add-to-cart .checkout_button_wrapper {
  display: block !important;
  width: auto !important;
  margin: 10px 0 0 auto !important;
}
body.single-product .woocommerce-variation-add-to-cart.variations_button {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  width: 100% !important;
}
body.single-product .woocommerce-variation-add-to-cart.variations_button .single_add_to_cart_button {
  display: block !important;
  width: 100% !important;
  margin-left: 0 !important;
}
body.single-product .woocommerce-variation-add-to-cart.variations_button .checkout_button_wrapper {
  display: block !important;
  width: auto !important;
  margin: 10px 0 0 auto !important;
}
.woo-selected-variation-item-name {
  font-weight: normal !important;
  font-size: 14px !important;
}

/* ===== WooCommerce : My Account ========================================= */
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-navigation a {
  font-size: 14px !important;
  color: #3d3d3d !important;
  line-height: 1.6 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style:none; margin:0; padding:0;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li { margin-bottom:20px; }
body.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address { display:none !important; }
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .sixteen.wide.required.field,
body.woocommerce-account .ui.form {
  color:#3d3d3d !important;
}
body.woocommerce-account .woocommerce-MyAccount-content {
  padding:30px; background:#f5f5f5;
  border-radius:50px; border:0;
}
@media (max-width:768px) {
  body.woocommerce-account .woocommerce-MyAccount-content { padding:10px; }
}
.u-column1.col-1.woocommerce-Address { padding: 30px !important; }
.msma-block.msma-account-orders.type-b { padding: 50px !important; }

/* ===== Mobile 전용 ======================================================= */
@media (max-width:767px) {
  #wpfront-scroll-top-container { bottom: 60px !important; }
  .eael-tabs-nav { height: 35px !important; }
  .menu-item a:active { opacity: 0.8 !important; transition: opacity 0.2s; }
  .my-fixed-mobile-menu {
    position: fixed !important;
    bottom: 0; left: 0;
    width: 100%; z-index: 100;
  }
  div#jet-toggle-control-9681,
  div#jet-toggle-control-6171,
  div#jet-toggle-control-2381,
  div#jet-toggle-control-7731,
  div#jet-toggle-control-1681 {
    display: none !important;
  }
  .plus-friend-global-button { display: none !important; }
}
.mobilebottom {
  position: fixed !important;
  bottom: 0; left: 0;
  width: 100%; z-index: 9999;
}

/* ===== Popup / 기타 ====================================================== */
.jet-popup__close-button {
  position: absolute;
  bottom: 10%; left: 50%;
  transform: translateX(-50%);
}
.jet-popup.jet-popup--front-mode .jet-popup__close-button { top:auto; }
strong[data-id] { cursor:pointer; }
.order-items, .price, .details,
.orders-status.msma-cancelled, .orders-status.msma-refunded,
.date, .image {
  background-color: transparent !important;
}
.details { padding-right: 20px !important; }
@media (max-width:767px) { .details { padding-right: 70px !important; } }

/* ===== Jet Tabs (보이는 탭만 표시, 나머지는 숨김) ====================== */
/* JetTabs/Elementor에서 쓰는 다양한 '활성' 표식을 모두 허용 */
.jet-tabs__content:not(.active):not(.is-active):not(.jet-active):not(.active-content):not(.elementor-active) {
  display: none !important;
}
/* 활성 상태는 표준적으로 표시 */
.jet-tabs__content.active,
.jet-tabs__content.is-active,
.jet-tabs__content.jet-active,
.jet-tabs__content.active-content,
.jet-tabs__content.elementor-active {
  display: block !important;
}

/* 스크롤/높이 스타일(필요시 유지) */
#jet-tabs-content-2391,
#jet-tabs-content-2392 {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 260px;
  min-height: 260px; /* 플러그인 인라인 min-height 무력화 */
  scrollbar-width: none; /* FF */
}
#jet-tabs-content-2391::-webkit-scrollbar,
#jet-tabs-content-2392::-webkit-scrollbar { display: none; }

@media (max-width:767px){
  #jet-tabs-content-2391,
  #jet-tabs-content-2392{
    max-height:145px;
    min-height:145px;
  }
}

/* === 기본 링크 색상 보정 (#3A89E4) === */
/* Elementor 내부 위젯/스타일은 유지하고,
   Elementor에서 지정하지 않은 전역 링크만 적용 */

body a,
body a:link,
body a:visited {
  color: #3A89E4;
}

body a:hover,
body a:active {
  color: #3d3d3d;
}

/* Elementor 위젯에서 강제로 지정된 색상은 그대로 둠 */
.elementor a {
  color: inherit;
}
/* Footer 네비게이션 링크 강제 회색 */
footer .elementor-nav-menu a {
  color:#3d3d3d !important;
}
footer .elementor-nav-menu a:hover {
  color:#3A89E4 !important; /* hover 시 파란색 */
}

/* JetTabs 탭 링크는 Elementor 설정 존중 */
.rtx-tab-link,
.rtx-tab-link:link,
.rtx-tab-link:visited {
  color: inherit !important;   /* Elementor/JetTabs 설정값 따르도록 */
}

.rtx-tab-link:hover,
.rtx-tab-link:active {
  color: inherit !important;   /* hover/active도 Elementor 스타일 유지 */
}

/* 로그인 텍스트 + 마이페이지 아이콘 공통 스타일 */
.menu-link.login-link {
  color: #3d3d3d;
  transition: color 0.2s ease;
  text-decoration: none; /* 밑줄 제거 */
}

.menu-link.login-link:hover {
  color: #7d7d7d;
}

/* 버튼 컨테이너 */
.msdp-add-to-cart-form-wrapper .button-guide .btn-wrap {
  display: flex;
  gap: 10px;              /* 버튼 사이 간격 */
  padding: 0 12px;        /* 좌우 여백 */
  box-sizing: border-box;
  background: #fff;       /* 필요 시 버튼 영역 배경 */
}

/* 구매하기 버튼 (p 태그) */
.msdp-add-to-cart-form-wrapper .button-guide .btn-wrap > p {
  border-radius: 12px;
  height: 48px;
  line-height: 48px;
  padding: 0 20px;
  margin: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  cursor: pointer;
}

/* 네이버페이 버튼 */
.msdp-add-to-cart-form-wrapper .button-guide .btn-wrap .npay-mobile-logo {
  border-radius: 12px;
  height: 48px;
  padding: 0 20px;
  box-sizing: border-box;
}

/* D.I.Y 싱글프로덕트데스크탑(768px 이상)에서는 숨김 */
@media screen and (min-width: 768px) {
  .msdp-float-cart-wrapper.omp-cart-type-c.active {
    display: none !important;
  }
}

/* 모바일(767px 이하)에서는 보임 */
@media screen and (max-width: 767px) {
  .msdp-float-cart-wrapper.omp-cart-type-c.active {
    display: block !important;
  }
}

