.np-tooltip {
  display: inline-flex;
  position: relative;
}

.np-tooltip__trigger {
  align-items: center;
  color: var(--secondary-normal);
  cursor: help;
  display: inline-flex;
  height: 1rem;
  justify-content: center;
  width: 1rem;
}

.np-tooltip__content,
.np-tooltip > span:not(.np-tooltip__trigger) {
  background: var(--grayscale-surface-white, #ffffff);
  border: 1px solid var(--grayscale-surface-disabled, #e8e8e8);
  border-radius: 6px;
  bottom: calc(100% + 8px);
  box-sizing: border-box;
  color: var(--grayscale-text-and-icon-default, #212121);
  font-family: "Be Vietnam Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 12px;
  font-weight: 400;
  left: 50%;
  line-height: 1.346;
  width: min(248px, calc(100vw - 32px));
  opacity: 0;
  padding: 4px 10px;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%) translateY(4px);
  transition: opacity 140ms ease, transform 140ms ease, visibility 140ms ease;
  visibility: hidden;
  z-index: 60;
}

.np-tooltip:hover .np-tooltip__content,
.np-tooltip:hover > span:not(.np-tooltip__trigger),
.np-tooltip:focus-within .np-tooltip__content,
.np-tooltip:focus-within > span:not(.np-tooltip__trigger),
.np-tooltip.is-visible .np-tooltip__content,
.np-tooltip.is-visible > span:not(.np-tooltip__trigger) {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
  visibility: visible;
}

.np-tooltip[data-placement="bottom"] .np-tooltip__content,
.np-tooltip[data-placement="bottom"] > span:not(.np-tooltip__trigger) {
  bottom: auto;
  top: calc(100% + 8px);
  transform: translateX(-50%) translateY(-4px);
}

.np-tooltip[data-placement="bottom"]:hover .np-tooltip__content,
.np-tooltip[data-placement="bottom"]:hover > span:not(.np-tooltip__trigger),
.np-tooltip[data-placement="bottom"]:focus-within .np-tooltip__content,
.np-tooltip[data-placement="bottom"]:focus-within > span:not(.np-tooltip__trigger),
.np-tooltip[data-placement="bottom"].is-visible .np-tooltip__content,
.np-tooltip[data-placement="bottom"].is-visible > span:not(.np-tooltip__trigger) {
  transform: translateX(-50%) translateY(0);
}

.np-tooltip[data-align="start"] .np-tooltip__content,
.np-tooltip[data-align="start"] > span:not(.np-tooltip__trigger) {
  left: 0;
  transform: translateY(4px);
}

.np-tooltip[data-align="start"]:hover .np-tooltip__content,
.np-tooltip[data-align="start"]:hover > span:not(.np-tooltip__trigger),
.np-tooltip[data-align="start"]:focus-within .np-tooltip__content,
.np-tooltip[data-align="start"]:focus-within > span:not(.np-tooltip__trigger),
.np-tooltip[data-align="start"].is-visible .np-tooltip__content,
.np-tooltip[data-align="start"].is-visible > span:not(.np-tooltip__trigger) {
  transform: translateY(0);
}

.np-tooltip[data-align="end"] .np-tooltip__content,
.np-tooltip[data-align="end"] > span:not(.np-tooltip__trigger) {
  left: auto;
  right: 0;
  transform: translateY(4px);
}

.np-tooltip[data-align="end"]:hover .np-tooltip__content,
.np-tooltip[data-align="end"]:hover > span:not(.np-tooltip__trigger),
.np-tooltip[data-align="end"]:focus-within .np-tooltip__content,
.np-tooltip[data-align="end"]:focus-within > span:not(.np-tooltip__trigger),
.np-tooltip[data-align="end"].is-visible .np-tooltip__content,
.np-tooltip[data-align="end"].is-visible > span:not(.np-tooltip__trigger) {
  transform: translateY(0);
}
