/* We don't use 2xl, 3xl, 4xl map keys because in some Intellij configurations, these keys are reformatted */
:host {
  /**
   * @prop --product-tour-width - product tour max width
   * @prop --product-tour-width - product tour max width
   */
  --product-tour-arrow-size: 16px;
  --product-tour-z-index: var(--joy-core-z-index-product-tour);
  --product-tour-spotlight-padding: var(--joy-core-spacing-2);
  display: none;
  position: absolute;
  left: 0;
  top: 0;
  z-index: var(--product-tour-z-index);
  width: var(--product-tour-width);
  max-width: 100%;
}

.joy-product-tour {
  position: relative;
  max-width: var(--product-tour-width);
  background-color: white;
  border-radius: var(--joy-core-radius-3);
  box-shadow: var(--joy-core-elevation-4);
  padding: var(--joy-core-spacing-6);
  color: var(--joy-color-neutral-60);
}
.joy-product-tour__hasPreheader {
  margin-bottom: var(--joy-core-spacing-4);
}
.joy-product-tour__preheader {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.joy-product-tour__preheader joy-icon {
  position: absolute;
  right: 15px;
  top: 15px;
  outline: none;
  cursor: pointer;
  padding: 10px;
  background: white;
}
.joy-product-tour__preheader joy-icon:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0.05;
  background-color: transparent;
  border-radius: 50%;
  transition: background-color var(--joy-transition-duration-default) var(--joy-transition-timing-function);
}
.joy-product-tour__preheader joy-icon:hover:after, .joy-product-tour__preheader joy-icon:focus:after {
  background-color: currentColor;
}
.joy-product-tour__header {
  padding-right: 50px;
  margin-bottom: var(--joy-core-spacing-2);
  font-weight: var(--joy-font-weight-bold);
  font-size: var(--joy-font-size-primary-600);
  line-height: var(--joy-line-height-large);
  font-family: var(--joy-font-family-base);
}
.joy-product-tour__content {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  font-weight: var(--joy-font-weight-normal);
  font-size: var(--joy-font-size-primary-300);
  line-height: var(--joy-line-height-large);
  font-family: var(--joy-font-family-base);
}
.joy-product-tour__content___icon {
  margin-right: var(--joy-core-spacing-4);
}
.joy-product-tour__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: var(--joy-core-spacing-4);
}
.joy-product-tour__footer___steps {
  color: var(--joy-color-neutral-50);
  font-weight: var(--joy-font-weight-normal);
  font-size: var(--joy-font-size-primary-600);
  line-height: var(--joy-line-height-large);
  font-family: var(--joy-font-family-base);
}
.joy-product-tour__footer___cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.joy-product-tour__footer___cta ::slotted(*) {
  margin-left: var(--joy-core-spacing-8);
}
.joy-product-tour__arrow {
  position: absolute;
  background: white;
  width: 26px;
  height: 26px;
  z-index: 1;
  transform: rotate(45deg);
}