/* ===== VP Portal Tour ===== */

/* Four shade divs covering everything except the spotlight */
.vp-tour-shade {
  position: fixed;
  z-index: 8999;
  background: rgba(0, 0, 0, 0.68);
  pointer-events: all;
  cursor: default;
}

/* Red highlight ring around the active element */
#vp-tour-ring {
  position: fixed;
  z-index: 9000;
  border: 2px solid rgba(206, 32, 41, 0.7);
  border-radius: 6px;
  box-shadow: 0 0 0 1px rgba(206, 32, 41, 0.2), inset 0 0 0 1px rgba(206, 32, 41, 0.1);
  pointer-events: none;
  display: none;
}

/* Tooltip card */
#vp-tour-tooltip {
  position: fixed;
  z-index: 9001;
  background: #ffffff;
  border-radius: 14px;
  padding: 20px 22px 16px;
  width: 300px;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.22);
  font-family: "Inter", sans-serif;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.22s ease, transform 0.22s ease;
}

#vp-tour-tooltip.vp-tour-visible {
  opacity: 1;
  transform: translateY(0);
}

[data-theme="dark"] #vp-tour-tooltip {
  background: #1e2232;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.55);
}

/* Arrow */
#vp-tour-tooltip::before {
  content: '';
  position: absolute;
  width: 12px;
  height: 12px;
  background: #ffffff;
  transform: rotate(45deg);
  left: 50%;
  margin-left: -6px;
  display: none;
}

[data-theme="dark"] #vp-tour-tooltip::before {
  background: #1e2232;
}

#vp-tour-tooltip.arrow-top::before {
  display: block;
  top: -6px;
  box-shadow: -2px -2px 4px rgba(0,0,0,0.06);
}

#vp-tour-tooltip.arrow-bottom::before {
  display: block;
  bottom: -6px;
  box-shadow: 2px 2px 4px rgba(0,0,0,0.06);
}

/* Progress dots */
#vp-tour-dots {
  display: flex;
  gap: 5px;
  margin-bottom: 12px;
}

.vp-tour-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #dde1ea;
  transition: background 0.2s, transform 0.2s;
}

.vp-tour-dot.active {
  background: var(--vprot, #CE2029);
  transform: scale(1.3);
}

[data-theme="dark"] .vp-tour-dot {
  background: #3a4060;
}

[data-theme="dark"] .vp-tour-dot.active {
  background: var(--vprot, #CE2029);
}

/* Step counter */
#vp-tour-step-indicator {
  font-size: 11px;
  color: #9aa3b2;
  margin-bottom: 5px;
  letter-spacing: 0.4px;
}

/* Title */
#vp-tour-title {
  font-size: 15px;
  font-weight: 650;
  margin: 0 0 7px;
  color: #1a1d2e;
}

[data-theme="dark"] #vp-tour-title {
  color: #e8edf5;
}

/* Body text */
#vp-tour-text {
  font-size: 13px;
  line-height: 1.6;
  color: #4a5568;
  margin: 0 0 18px;
}

[data-theme="dark"] #vp-tour-text {
  color: #9aa3b8;
}

/* Action row */
#vp-tour-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#vp-tour-skip {
  background: none;
  border: none;
  color: #9aa3b2;
  font-size: 12px;
  cursor: pointer;
  padding: 0;
  font-family: inherit;
  transition: color 0.15s;
}

#vp-tour-skip:hover { color: #4a5568; }

[data-theme="dark"] #vp-tour-skip:hover { color: #c8d0df; }

#vp-tour-next {
  background: var(--vprot, #CE2029);
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 8px 20px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: background 0.2s, transform 0.1s;
}

#vp-tour-next:hover  { background: #a8181f; }
#vp-tour-next:active { transform: scale(0.97); }
