@charset "utf-8";

.driver-popover.driverjs-theme { background-color: rgb(255, 255, 255); border-radius: 12px; box-shadow: rgba(0, 0, 0, 0.15) 0px 10px 40px; max-width: 400px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; -webkit-font-smoothing: antialiased; }

.driver-popover.driverjs-theme .driver-popover-title { font-size: 18px; font-weight: 700; color: rgb(31, 41, 55); margin-bottom: 8px; font-family: inherit; }

.driver-popover.driverjs-theme .driver-popover-description { font-size: 14px; line-height: 1.6; color: rgb(107, 114, 128); font-family: inherit; }

.driver-popover.driverjs-theme .driver-popover-progress-text { font-size: 12px; color: rgb(156, 163, 175); font-weight: 500; font-family: inherit; }

.driver-popover.driverjs-theme button { border-radius: 8px; font-weight: 600; padding: 8px 16px; transition: 0.2s; font-family: inherit; text-shadow: none !important; }

.driver-popover.driverjs-theme .driver-popover-next-btn { background-color: rgb(251, 53, 109); color: white; font-weight: 600; }

.driver-popover.driverjs-theme .driver-popover-next-btn:hover { background-color: rgb(224, 42, 93); transform: translateY(-1px); }

.driver-popover.driverjs-theme .driver-popover-prev-btn { background-color: rgb(243, 244, 246); color: rgb(55, 65, 81); }

.driver-popover.driverjs-theme .driver-popover-prev-btn:hover { background-color: rgb(229, 231, 235); }

.driver-popover.driverjs-theme .driver-popover-close-btn { color: rgb(156, 163, 175); }

.driver-popover.driverjs-theme .driver-popover-close-btn:hover { color: rgb(107, 114, 128); }

.driver-active-element { border-radius: 8px !important; }

.driver-active-element.driver-no-interaction-disabled { animation: 1.5s ease-in-out 0s infinite normal none running driverPulse; box-shadow: rgba(251, 53, 109, 0.4) 0px 0px 0px 0px; }

@keyframes driverPulse { 
  0% { box-shadow: rgba(251, 53, 109, 0.6) 0px 0px 0px 0px; }
  70% { box-shadow: rgba(251, 53, 109, 0) 0px 0px 0px 12px; }
  100% { box-shadow: rgba(251, 53, 109, 0) 0px 0px 0px 0px; }
}

.tap-indicator { display: inline-flex; align-items: center; gap: 4px; background: linear-gradient(135deg, rgb(251, 53, 109), rgb(255, 107, 157)); color: white; padding: 4px 10px; border-radius: 20px; font-size: 12px; font-weight: 600; margin-top: 8px; animation: 1s ease-in-out 0s infinite normal none running tapBounce; }

@keyframes tapBounce { 
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-3px); }
}

.driver-overlay { background-color: rgba(0, 0, 0, 0.03) !important; }

.driver-active-element::after { content: ""; position: absolute; bottom: -40px; left: 50%; transform: translateX(-50%); width: 32px; height: 32px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fb356d'%3E%3Cpath d='M9 11.24V7.5a2.5 2.5 0 0 1 5 0v3.74c1.21-.81 2-2.18 2-3.74a5 5 0 0 0-10 0c0 1.56.79 2.93 2 3.74zm9.84 4.63l-4.54-2.26c-.17-.07-.35-.11-.54-.11H13v-6a.5.5 0 0 0-1 0v8.5H9.5a.5.5 0 0 0 0 1h3.5v2.5a.5.5 0 0 0 1 0V16h.76c.19 0 .37-.04.54-.11l4.54-2.26c.32-.16.5-.5.46-.86-.04-.36-.28-.66-.62-.77l-.34-.13z'/%3E%3C/svg%3E"); background-size: contain; background-repeat: no-repeat; animation: 0.8s ease-in-out 0s infinite normal none running pointerBounce; pointer-events: none; z-index: 10001; display: none; }

.driver-active-element.show-pointer::after { display: block; }

@keyframes pointerBounce { 
  0%, 100% { transform: translateX(-50%) translateY(0px); }
  50% { transform: translateX(-50%) translateY(-8px); }
}

.animate-shake { animation: 0.5s ease-in-out 0s 1 normal none running shake; }

@keyframes shake { 
  0%, 100% { transform: translateX(0px); }
  20% { transform: translateX(-8px); }
  40% { transform: translateX(8px); }
  60% { transform: translateX(-6px); }
  80% { transform: translateX(6px); }
}

.driver-popover { animation: 0.3s ease-out 0s 1 normal none running driverPopoverFadeIn; }

@keyframes driverPopoverFadeIn { 
  0% { opacity: 0; transform: translateY(10px); }
  100% { opacity: 1; transform: translateY(0px); }
}

@media (max-width: 767px) {
  .driver-popover.driverjs-theme { max-width: calc(-32px + 100vw); margin: 0px 16px; }
  .driver-popover.driverjs-theme .driver-popover-title { font-size: 16px; }
  .driver-popover.driverjs-theme .driver-popover-description { font-size: 13px; line-height: 1.5; }
  .driver-popover.driverjs-theme button { padding: 6px 12px; font-size: 13px; }
  .driver-active-element::after { display: none !important; }
  .driver-highlighted-element { border-radius: 6px !important; }
}