@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css");

/* Smooth Scroll */
.smooth {scroll-behavior: smooth;}
html 	{scroll-behavior: smooth;}
summary::marker {font-size: 20px;}

/* === GPT coach placement - fixed positioning (floating button) - right: 40px, bottom: 80px; === */
/* =========================
   CX Coach Carol - Container
   ========================= */
.GPT_coach {
  position: fixed !important;
  right: 40px !important;
  bottom: 80px !important;
  left: auto !important;
  top: auto !important;
  z-index: 9999 !important;

  width: 88px !important;
  height: 88px !important;

  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

/* =========================
   CX Coach Carol - Link/Image
   ========================= */
.GPT_coach a {
  display: block !important;
  width: 88px !important;
  height: 88px !important;
  margin: 0 !important;
  padding: 0 !important;
  outline: none !important;
}

.GPT_coach img {
  display: block !important;
  width: 88px !important;
  height: 88px !important;
  border-radius: 50% !important;
  background: white !important;
  box-shadow: 0 6px 18px rgba(0,0,0,0.25) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.GPT_coach img:hover {
  transform: scale(1.05) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,0.35) !important;
}

/* =========================
   CX Coach Carol - Label
   ========================= */
.GPT_coach_label {
  position: absolute !important;
  right: 0 !important;
  bottom: 100px !important;
  left: auto !important;
  top: auto !important;

  width: 140px !important;
  background: white !important;
  color: #333 !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  padding: 8px 8px !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.18) !important;
  text-align: center !important;

  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transition: opacity 0.6s ease, visibility 0.6s ease !important;
}

.GPT_coach_label.hidden {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.GPT_coach_label::after {
  content: "" !important;
  position: absolute !important;
  right: 18px !important;
  top: 100% !important;
  border-width: 8px 6px 0 6px !important;
  border-style: solid !important;
  border-color: white transparent transparent transparent !important;
}

/* =========================
   Mobile tweak
   ========================= */
@media (max-width: 768px) {
  .GPT_coach {
    right: 20px !important;
    bottom: 90px !important;
    width: 72px !important;
    height: 72px !important;
  }

  .GPT_coach a,
  .GPT_coach img {
    width: 72px !important;
    height: 72px !important;
  }

  .GPT_coach_label {
    bottom: 84px !important;
    width: 130px !important;
    font-size: 12px !important;
  }
}/* === end GPT coach === */


/* Control external links */
a.external > .external_link_icon { display: none !important }
img.outline {border: 1px #d1d1d1 solid;}

/* Helpful defaults for NSVP containers inserted by shortcode/link upgrades */
.nsvp-player {display:block; max-width:100%;}

/* Optional styling for the custom Next Gate button - Confirm read to show Next */
.next-gate-box {
  border: 1px solid #d8d8d8;
  background: #fdfdfd;
  border-radius: 12px;
  padding: 1.2rem;
  margin: 1rem 0;
}

.next-gate-box p {
  margin: 0 0 0.5rem 0;
  font-size: 0.95rem;
}

.next-gate-btn {
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 999px;
  padding: 0.6rem 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

.next-gate-btn:hover {
  background-color: #e8e8e8;
}

.next-gate-btn[aria-pressed="true"] {
  background-color: #e6ffe6;
  border-color: #b6e7b6;
}