/* Zero Elementor: Native Elements CSS */

:root {
  --e-global-color-primary: #191250;
  --e-global-color-secondary: #916eff;
  --e-global-color-text: #322977;
  --e-global-color-accent: #191250;
  --e-global-color-abf4b4f: #ffffff;
  --e-global-typography-primary-font-family: "Satoshi";
  --e-global-typography-primary-font-weight: 700;
}

/* Mobile Tap Highlight - 옅은 회색 */
* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.05);
  -webkit-touch-callout: none;
}

a,
button,
input,
textarea,
select,
.jws-toolbar-item {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.08);
  -webkit-touch-callout: none;
}

/* Base Elementor Utility Classes */
.elementor {
  box-sizing: border-box;
}

.e-con {
  display: flex;
  position: relative;
  width: 100%;
}

.e-con-boxed {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
}

.e-con-inner {
  display: flex;
  width: 100%;
}

.elementor-widget {
  position: relative;
  width: 100%;
}

.elementor-widget-container {
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
}

/* Header (4242) */
.elementor-4242 .elementor-element.elementor-element-a83d5b2 {
  --display: flex;
  --flex-direction: row;
  --align-items: center;
  background-color: #ffffff;
  border-style: solid;
  border-width: 0px 0px 1px 0px;
  border-color: #3229771a;
}

.elementor-4242 .elementor-logo img {
  max-width: 150px;
  height: auto;
}

.jws_main_menu ul {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}

.jws_main_menu ul li {
  margin: 0 15px;
}

.jws_main_menu ul li a {
  text-decoration: none;
  color: var(--e-global-color-text);
  font-weight: 500;
}

/* Title Bar (4234) */
.elementor-4234 .elementor-element.elementor-element-3f6df08 {
  --display: flex;
  --flex-direction: column;
  margin-top: 20px;
}

.elementor-4234 .elementor-element.elementor-element-8fee79c {
  background-image: url("https://nexilife.co.kr/nx_content/uploads/2024/06/Background-shop.svg");
  background-position: center right;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 20px;
  padding: 124px 85px 130px 85px;
  color: #fff;
}

.elementor-4234 h1.elementor-heading-title {
  font-size: 48px;
  margin: 0;
  color: #fff;
}

.jws-breadcrumbs {
  list-style: none;
  display: flex;
  padding: 0;
  margin: 10px 0 0;
  font-size: 14px;
}

.jws-breadcrumbs li {
  margin-right: 5px;
}

.jws-breadcrumbs a {
  color: #fff;
  text-decoration: none;
  opacity: 0.8;
}

/* Footer (1457) */
.elementor-1457 .elementor-element.elementor-element-7d7db79 {
  background-color: var(--e-global-color-primary);
  padding: 58px 10px 42px 10px;
  color: #fff;
}

.elementor-1457 .elementor-widget-text-editor {
  text-align: center;
  font-size: 14px;
  opacity: 0.7;
}

/* Mobile Toolbar - 인라인 스타일로 이동 (footer-native.php) 
 * 주석 처리됨: 2025-01-02 - Pulse 전환 완료
 */
/* 
.jws-toolbar-wap {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 65px;
  background: #fff;
  display: flex;
  justify-content: space-around;
  align-items: center;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.05);
  z-index: 9999;
  padding-bottom: env(safe-area-inset-bottom);
}

.jws-toolbar-item a {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  min-height: 50px !important;
  padding: 5px 0 !important;
  text-decoration: none !important;
}

.jws-toolbar-item i {
  font-size: 24px !important;
  color: #322977 !important;
  margin-bottom: 2px !important;
  display: inline-block !important;
  font-style: normal !important;
  line-height: 1 !important;
}

.jws-toolbar-item span {
  display: block !important;
  color: #322977 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  margin-top: 2px !important;
  line-height: 1.2 !important;
}

.jws-toolbar-item a:hover i,
.jws-toolbar-item a:hover span {
  color: #916eff !important;
}
*/

/* Header Icons Color */
.mobile-actions svg,
.mobile-actions svg * {
  stroke: var(--body) !important;
  stroke-width: 2.2px !important;
}

.mobile-actions .notifications span {
  font-weight: bold;
}

/* Category Icons Fix */
.karrot-category-item svg {
  color: var(--body) !important;
  fill: var(--body) !important;
  width: 28px !important;
  height: 28px !important;
}

/* Additional layout fixes */
.site-header {
  position: relative;
  z-index: 1000;
}

.site-footer {
  position: relative;
  width: 100%;
}

.elementor-hidden-desktop {
  display: none !important;
}

/* Responsive Header Adjustments */
/* Responsive Header Adjustments */
.jws-header-native {
  padding: 0 20px !important;
  justify-content: space-between !important;
}

@media (max-width: 480px) {
  .jws-header-native {
    padding: 0 24px 0 16px !important;
    /* 우측 패딩 확보 (배지 공간) */
  }

  .jws-header-native .logo img {
    height: 22px !important;
    max-width: 140px !important;
    object-fit: contain;
  }

  .mobile-actions {
    gap: 12px !important;
    flex-shrink: 0 !important;
    /* 공간 부족해도 줄어들지 않음 */
    margin-right: -4px;
    /* 우측 시각적 보정 */
  }

  .mobile-actions .profile-icon svg,
  .mobile-actions .notifications svg {
    width: 22px !important;
    height: 22px !important;
  }
}

@media (max-width: 360px) {
  .jws-header-native {
    padding: 0 16px 0 12px !important;
  }

  .mobile-actions {
    gap: 8px !important;
  }
}

/* Prevent Horizontal Overflow Globally */
html,
body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

.jws-header-native,
.jws-footer-native {
  width: 100% !important;
  max-width: 100vw !important;
  box-sizing: border-box !important;
}

@media (max-width: 1024px) {
  .elementor-hidden-desktop {
    display: flex !important;
  }

  .elementor-hidden-mobile {
    display: none !important;
  }

  /* 모바일 해상도에서 header-native.php 전체 숨김 */
  .nexi-desktop-only {
    display: none !important;
  }
}

/* ===== Toolbar 알림 도트 스타일 ===== */
/* footer-native.php 인라인으로 이동 (성능 최적화) */
/* Critical CSS로 즉시 로드되어 렌더 블로킹 제거 및 HTTP 요청 감소 */
