/* BPA Guided Tour — shared, dependency-free walkthrough engine. Drop-in for any BPA plugin. */
.bpa-tour-overlay {
  position: fixed; inset: 0; z-index: 100000; background: transparent; cursor: default;
}
.bpa-tour-spot {
  position: absolute; z-index: 100001; border-radius: 6px; pointer-events: none;
  box-shadow: 0 0 0 9999px rgba(0,38,62,.62), 0 0 0 3px #FBD914;
  transition: all .2s ease;
}
.bpa-tour-spot.no-target { box-shadow: 0 0 0 9999px rgba(0,38,62,.62); width: 0; height: 0; }

.bpa-tour-pop {
  position: fixed; z-index: 100002; width: 340px; max-width: calc(100vw - 24px);
  background: #fff; border-radius: 10px; box-shadow: 0 12px 40px rgba(0,38,62,.35);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #1d2b36; overflow: hidden; border-top: 5px solid #00263E;
}
.bpa-tour-pop .bpa-tour-head {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  padding: 14px 16px 6px;
}
.bpa-tour-pop .bpa-tour-badge {
  font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em;
  color: #00263E; background: #FBD914; padding: 2px 8px; border-radius: 999px;
}
.bpa-tour-pop .bpa-tour-x { border: none; background: none; cursor: pointer; font-size: 20px; line-height: 1; color: #8a93a0; padding: 0 2px; }
.bpa-tour-pop .bpa-tour-x:hover { color: #C8102E; }
.bpa-tour-pop h3 { margin: 0; padding: 0 16px; font-size: 17px; color: #00263E; }
.bpa-tour-pop .bpa-tour-body { padding: 8px 16px 14px; font-size: 14px; line-height: 1.55; color: #3a4754; }
.bpa-tour-pop .bpa-tour-body p { margin: 0 0 8px; }
.bpa-tour-pop .bpa-tour-body strong { color: #00263E; }
.bpa-tour-pop .bpa-tour-foot {
  display: flex; align-items: center; gap: 8px; padding: 10px 16px 14px; border-top: 1px solid #eef0f2;
}
.bpa-tour-pop .bpa-tour-progress { font-size: 12px; color: #8a93a0; margin-right: auto; font-variant-numeric: tabular-nums; }
.bpa-tour-btn {
  border: 1px solid #d4dae0; background: #fff; color: #00263E; border-radius: 6px;
  padding: 7px 14px; font-size: 13px; font-weight: 600; cursor: pointer;
}
.bpa-tour-btn:hover { background: #f4f6f8; }
.bpa-tour-btn.primary { background: #C8102E; border-color: #C8102E; color: #fff; }
.bpa-tour-btn.primary:hover { background: #a72b2a; }
.bpa-tour-btn:disabled { opacity: .45; cursor: default; }

/* Launch button (floating) */
.bpa-tour-launch {
  position: fixed; right: 18px; bottom: 18px; z-index: 99999;
  background: #00263E; color: #fff; border: none; border-radius: 999px;
  padding: 10px 16px; font-size: 13px; font-weight: 600; cursor: pointer;
  box-shadow: 0 4px 16px rgba(0,38,62,.3); font-family: inherit;
  display: inline-flex; align-items: center; gap: 7px;
}
.bpa-tour-launch:hover { background: #00476B; }
.bpa-tour-launch .dot { width: 8px; height: 8px; border-radius: 50%; background: #FBD914; }

@media (max-width: 600px) {
  .bpa-tour-pop { width: calc(100vw - 24px); }
  .bpa-tour-launch { right: 12px; bottom: 12px; }
}
@media print { .bpa-tour-overlay, .bpa-tour-spot, .bpa-tour-pop, .bpa-tour-launch { display: none !important; } }
