/* ===== 플로팅 상담 버튼 (전 페이지 공통) =====
   body 끝에 직접 붙는다 — x-dc 가 다시 그리는 서브트리 밖이라 재렌더에 영향받지 않는다. */

.iw-root{
  position:fixed;right:24px;bottom:24px;z-index:9999;
  display:flex;flex-direction:column;align-items:flex-end;gap:12px;
  font-family:'Manrope',system-ui,sans-serif;
}

/* ── 메인 버튼 ─────────────────────────────────────────── */
.iw-main{
  width:56px;height:56px;border-radius:50%;
  background:#1B2A4A;border:none;padding:0;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 4px 20px rgba(0,0,0,.15);
  transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease;
}
.iw-main:hover{transform:scale(1.05);box-shadow:0 6px 26px rgba(0,0,0,.2)}
.iw-main:active{transform:scale(.98)}
.iw-main:focus-visible{outline:2px solid #BF8E5A;outline-offset:3px}

.iw-main-icon{position:relative;width:24px;height:24px}
.iw-main-icon svg{position:absolute;inset:0;width:24px;height:24px;color:#fff;transition:opacity .2s ease,transform .25s ease}
.iw-icon-chat{opacity:1;transform:rotate(0) scale(1)}
.iw-icon-close{opacity:0;transform:rotate(-90deg) scale(.6)}
.iw-root.is-open .iw-icon-chat{opacity:0;transform:rotate(90deg) scale(.6)}
.iw-root.is-open .iw-icon-close{opacity:1;transform:rotate(0) scale(1)}

/* ── 펼쳐지는 항목 ─────────────────────────────────────── */
.iw-item{
  display:flex;align-items:center;gap:12px;
  text-decoration:none;background:none;border:none;padding:0;cursor:pointer;
  opacity:0;transform:translateY(12px) scale(.9);pointer-events:none;
  transition:opacity .28s ease,transform .28s cubic-bezier(.22,1,.36,1);
}
.iw-root.is-open .iw-item{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
/* 아래(견적)에서 위(카카오) 순으로 떠오르게 — DOM 은 위에서부터라 역순으로 지연을 준다 */
.iw-root.is-open .iw-item--kakao{transition-delay:.16s}
.iw-root.is-open .iw-item--tel{transition-delay:.08s}
.iw-root.is-open .iw-item--quote{transition-delay:0s}

/* 왼쪽 흰색 라벨 말풍선 */
.iw-label{
  background:#fff;color:#1B2A4A;
  font:600 13px/1 'Manrope',system-ui,sans-serif;white-space:nowrap;
  padding:9px 14px;border-radius:8px;
  box-shadow:0 2px 12px rgba(0,0,0,.12);
}

.iw-btn{
  width:46px;height:46px;border-radius:50%;flex-shrink:0;
  display:grid;place-items:center;
  box-shadow:0 3px 14px rgba(0,0,0,.16);
  transition:transform .2s ease;
}
.iw-item:hover .iw-btn{transform:scale(1.08)}
.iw-btn svg{width:22px;height:22px;display:block}

.iw-btn--kakao{background:#FEE500;color:#000}
.iw-btn--tel{background:#fff;color:#1B2A4A}
.iw-btn--quote{background:#BF8E5A;color:#fff}

/* ── 안내 말풍선 (로드 3초 뒤 1회) ─────────────────────── */
.iw-tip{
  position:absolute;right:70px;bottom:8px;
  display:flex;align-items:center;gap:10px;
  background:#fff;color:#1B2A4A;
  font:500 13px/1.4 'Manrope',system-ui,sans-serif;white-space:nowrap;
  padding:11px 12px 11px 16px;border-radius:10px;
  box-shadow:0 4px 20px rgba(0,0,0,.15);
  opacity:0;transform:translateX(8px);pointer-events:none;
  transition:opacity .35s ease,transform .35s cubic-bezier(.22,1,.36,1);
}
.iw-tip.is-on{opacity:1;transform:translateX(0);pointer-events:auto}
/* 말풍선 꼬리 */
.iw-tip::after{
  content:'';position:absolute;right:-5px;bottom:18px;
  width:10px;height:10px;background:#fff;transform:rotate(45deg);
}
.iw-tip-close{
  background:none;border:none;padding:0;margin:0;cursor:pointer;
  width:18px;height:18px;display:grid;place-items:center;
  color:#8a93a1;flex-shrink:0;
}
.iw-tip-close:hover{color:#1B2A4A}
.iw-tip-close svg{width:12px;height:12px}

/* ── 모바일 하단 고정 CTA 바 (inquiry-widget.js 가 body 에 주입) ──
   ≤768 에서 플로팅 위젯을 대신한다. 층위: 메뉴 오버레이(9500) 아래,
   본문·헤더(30) 위. 검색(10001)·로그인(10000)보다도 아래라 모달을
   가리지 않는다. */
.es-ctabar{
  position:fixed;left:0;right:0;bottom:0;z-index:9000;
  display:none;grid-template-columns:1fr 1fr;
  font-family:'Manrope',system-ui,sans-serif;
  box-shadow:0 -10px 34px rgba(10,15,25,.16);
}
.es-ctabar a{
  display:flex;align-items:center;justify-content:center;gap:9px;
  min-height:58px;
  padding-bottom:env(safe-area-inset-bottom,0px);
  font:600 14px 'Manrope',system-ui,sans-serif;letter-spacing:.06em;
  text-decoration:none;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
.es-ctabar svg{width:17px;height:17px;flex-shrink:0}
.es-ctabar-tel{background:#0e2440;color:#f6f2ea}
.es-ctabar-kakao{background:#c9a24b;color:#12233c}
.es-ctabar a:active{filter:brightness(1.12)}

@media (max-width:768px){
  /* 플로팅 위젯 → 하단 CTA 바로 교대 */
  .iw-root{display:none}
  .es-ctabar{display:grid}
}

@media (prefers-reduced-motion:reduce){
  .iw-main,.iw-item,.iw-tip,.iw-btn,.iw-main-icon svg{transition:none}
  .iw-main:hover{transform:none}
}
