:root,
.neeto-ui-theme--light,
.neeto-ui-theme--dark {
  --neeto-ui-tooltip-max-width: calc(100vw - 10px);
  --neeto-ui-tooltip-font-size: var(--neeto-ui-text-xs);
  --neeto-ui-tooltip-bg-color: rgb(var(--neeto-ui-gray-800));
  --neeto-ui-tooltip-color: rgb(var(--neeto-ui-white));
  --neeto-ui-tooltip-border-radius: var(--neeto-ui-rounded);
  --neeto-ui-tooltip-line-height: 1.4;
  --neeto-ui-tooltip-word-wrap: break-word;
  --neeto-ui-tooltip-padding-x: 8px;
  --neeto-ui-tooltip-padding-y: 4px;
  --neeto-ui-tooltip-z-index: 1;

  // Arrow
  --neeto-ui-tooltip-arrow-color: rgb(var(--neeto-ui-gray-800));
  --neeto-ui-tooltip-arrow-size: 6px;
  --neeto-ui-tooltip-arrow-offset: 12px;

  // Light theme
  --neeto-ui-tooltip-light-theme-bg-color: rgb(var(--neeto-ui-white));
  --neeto-ui-tooltip-light-theme-color: rgb(var(--neeto-ui-gray-800));
  --neeto-ui-tooltip-light-theme-box-shadow: var(--neeto-ui-shadow-sm);
  --neeto-ui-tooltip-light-theme-backdrop-bg-color: rgb(var(--neeto-ui-white));

  // Light theme arrow
  --neeto-ui-tooltip-light-theme-arrow-color: rgb(var(--neeto-ui-white));
  --neeto-ui-tooltip-light-theme-arrow-border-color: rgb(var(--neeto-ui-white));
}

.tippy-box[data-animation="fade"][data-state="hidden"] {
  opacity: 0;
}

[data-tippy-root] {
  max-width: var(--neeto-ui-tooltip-max-width);
}

.tippy-box {
  position: relative;
  background-color: var(--neeto-ui-tooltip-bg-color);
  color: var(--neeto-ui-tooltip-color);
  border-radius: var(--neeto-ui-tooltip-border-radius);
  font-size: var(--neeto-ui-tooltip-font-size);
  line-height: var(--neeto-ui-tooltip-line-height);
  outline: 0;
  transition-property: transform, visibility, opacity;
  word-wrap: var(--neeto-ui-tooltip-word-wrap);

  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .neeto-ui-text-h1,
  .neeto-ui-text-h2,
  .neeto-ui-text-h3,
  .neeto-ui-text-h4,
  .neeto-ui-text-h5,
  .neeto-ui-text-h6 {
    color: inherit;
  }
}

.tippy-box[data-placement^="top"] > .tippy-arrow {
  bottom: 0;
}

.tippy-box[data-placement^="top"] > .tippy-arrow:before {
  bottom: -7px;
  left: 0;
  border-width: 8px 8px 0;
  border-top-color: initial;
  transform-origin: center top;
}

.tippy-box[data-placement^="bottom"] > .tippy-arrow {
  top: 0;
}

.tippy-box[data-placement^="bottom"] > .tippy-arrow:before {
  top: -7px;
  left: 0;
  border-width: 0 8px 8px;
  border-bottom-color: initial;
  transform-origin: center bottom;
}

.tippy-box[data-placement^="left"] > .tippy-arrow {
  right: 0;
}

.tippy-box[data-placement^="left"] > .tippy-arrow:before {
  border-width: 8px 0 8px 8px;
  border-left-color: initial;
  right: -7px;
  transform-origin: center left;
}

.tippy-box[data-placement^="right"] > .tippy-arrow {
  left: 0;
}

.tippy-box[data-placement^="right"] > .tippy-arrow:before {
  left: -7px;
  border-width: 8px 8px 8px 0;
  border-right-color: initial;
  transform-origin: center right;
}

.tippy-box[data-inertia][data-state="visible"] {
  transition-timing-function: cubic-bezier(0.54, 1.5, 0.38, 1.11);
}

.tippy-arrow {
  width: 16px;
  height: 16px;
  color: var(--neeto-ui-tooltip-arrow-color);
}

.tippy-arrow:before {
  content: "";
  position: absolute;
  border-color: transparent;
  border-style: solid;
}

.tippy-content {
  position: relative;
  padding: var(--neeto-ui-tooltip-padding-y) var(--neeto-ui-tooltip-padding-x);
  z-index: var(--neeto-ui-tooltip-z-index);
}

// SVG arrow
.tippy-box[data-placement^="top"] > .tippy-svg-arrow {
  bottom: 0;
}

.tippy-box[data-placement^="top"] > .tippy-svg-arrow:after,
.tippy-box[data-placement^="top"] > .tippy-svg-arrow > svg {
  top: 16px;
  transform: rotate(180deg);
}

.tippy-box[data-placement^="bottom"] > .tippy-svg-arrow {
  top: 0;
}

.tippy-box[data-placement^="bottom"] > .tippy-svg-arrow > svg {
  bottom: 16px;
}

.tippy-box[data-placement^="left"] > .tippy-svg-arrow {
  right: 0;
}

.tippy-box[data-placement^="left"] > .tippy-svg-arrow:after,
.tippy-box[data-placement^="left"] > .tippy-svg-arrow > svg {
  transform: rotate(90deg);
  top: calc(50% - 3px);
  left: 13px;
}

.tippy-box[data-placement^="right"] > .tippy-svg-arrow {
  left: 0;
}

.tippy-box[data-placement^="right"] > .tippy-svg-arrow:after,
.tippy-box[data-placement^="right"] > .tippy-svg-arrow > svg {
  transform: rotate(-90deg);
  top: calc(50% - 3px);
  right: 13px;
}

.tippy-svg-arrow {
  width: 17px;
  height: 17px;
  fill: var(--neeto-ui-tooltip-arrow-color);
  text-align: initial;
}

.tippy-svg-arrow,
.tippy-svg-arrow > svg {
  position: absolute;
}

.tippy-svg-arrow > svg > path {
  fill: var(--neeto-ui-tooltip-arrow-color);
}

// Light theme
.tippy-box[data-theme~="light"] .tippy-svg-arrow > svg > path {
  fill: var(--neeto-ui-tooltip-light-theme-arrow-color);
}

.tippy-box[data-theme~="light"] {
  color: var(--neeto-ui-tooltip-light-theme-color);
  box-shadow: var(--neeto-ui-tooltip-light-theme-box-shadow);
  background-color: var(--neeto-ui-tooltip-light-theme-bg-color);
}

.tippy-box[data-theme~="light"][data-placement^="top"] > .tippy-arrow:before {
  border-top-color: var(--neeto-ui-tooltip-light-theme-arrow-border-color);
}

.tippy-box[data-theme~="light"][data-placement^="bottom"]
  > .tippy-arrow:before {
  border-bottom-color: var(--neeto-ui-tooltip-light-theme-arrow-border-color);
}

.tippy-box[data-theme~="light"][data-placement^="left"] > .tippy-arrow:before {
  border-left-color: var(--neeto-ui-tooltip-light-theme-arrow-border-color);
}

.tippy-box[data-theme~="light"][data-placement^="right"] > .tippy-arrow:before {
  border-right-color: var(--neeto-ui-tooltip-light-theme-arrow-border-color);
}

.tippy-box[data-theme~="light"] > .tippy-backdrop {
  background-color: var(--neeto-ui-tooltip-light-theme-backdrop-bg-color);
}

.tippy-box[data-theme~="light"] > .tippy-svg-arrow {
  fill: var(--neeto-ui-tooltip-light-theme-arrow-color);
}

.neetix-tooltip {
  --neeto-ui-tooltip-bg-color: rgb(var(--neeto-ui-primary-800));
  --neeto-ui-tooltip-arrow-color: rgb(var(--neeto-ui-primary-800));
  --neeto-ui-tooltip-light-theme-color: rgb(var(--neeto-ui-primary-800));
}

// Adding border to popover

.tippy-box[data-theme~="light"] {
  .tippy-arrow {
    transform-style: preserve-3d;
    width: 0;
    height: 0;
    border: var(--neeto-ui-tooltip-arrow-size) solid transparent;
    color: rgb(var(--neeto-ui-white));

    &::before {
      transform: translateZ(-1px);
      border: var(--neeto-ui-tooltip-arrow-size) solid transparent;
    }
  }
  &[data-placement^="right"] .tippy-arrow {
    border-right-color: rgb(var(--neeto-ui-white));
    left: calc(-1 * var(--neeto-ui-tooltip-arrow-offset));

    &::before {
      left: calc(-1 * (var(--neeto-ui-tooltip-arrow-size) + 1px));
      top: calc(-1 * var(--neeto-ui-tooltip-arrow-size));
      border-right-color: var(--neeto-ui-popover-light-theme-border-color);
    }
  }
  &[data-placement^="left"] .tippy-arrow {
    border-left-color: rgb(var(--neeto-ui-white));
    right: calc(-1 * var(--neeto-ui-tooltip-arrow-offset));

    &::before {
      right: calc(-1 * (var(--neeto-ui-tooltip-arrow-size) + 1px));
      top: calc(-1 * var(--neeto-ui-tooltip-arrow-size));
      border-left-color: var(--neeto-ui-popover-light-theme-border-color);
    }
  }
  &[data-placement^="bottom"] .tippy-arrow {
    border-bottom-color: rgb(var(--neeto-ui-white));
    top: calc(-1 * var(--neeto-ui-tooltip-arrow-offset));

    &::before {
      top: calc(-1 * (var(--neeto-ui-tooltip-arrow-size) + 1px));
      left: calc(-1 * var(--neeto-ui-tooltip-arrow-size));
      bottom: auto;
      border-bottom-color: var(--neeto-ui-popover-light-theme-border-color);
    }
  }
  &[data-placement^="top"] .tippy-arrow {
    border-top-color: rgb(var(--neeto-ui-white));
    bottom: calc(-1 * var(--neeto-ui-tooltip-arrow-offset));

    &::before {
      left: calc(-1 * var(--neeto-ui-tooltip-arrow-size));
      top: calc(-1 * (var(--neeto-ui-tooltip-arrow-size) - 1px));
      border-top-color: var(--neeto-ui-popover-light-theme-border-color);
    }
  }
}
