/* ============================================================
   Content Sup Tooltip Styles
   ============================================================ */

/* ------------------------------------------------------------
   Color Variables (Design Tokens)
   ------------------------------------------------------------ */
:root {
  --tooltip-primary-color: var(--clr-primary);
  --tooltip-text-color: var(--clr-gray-dark);
  --tooltip-border-color: var(--clr-gray-350);
  --tooltip-bg-color: var(--clr-white);
  --tooltip-link-hover-color: var(--clr-gray-600);

  --tooltip-shadow: 0 0 3px 0 var(--tooltip-border-color);
}

/* ------------------------------------------------------------
   Sup Wrapper
   ------------------------------------------------------------ */
.tooltip-sup-wrapper {
  cursor: pointer;
}

/* Sup Anchor Styling */
sup>a {
  color: var(--tooltip-primary-color) !important;
  font-size: 16px;
  font-weight: 600;
}

/* ------------------------------------------------------------
   Tooltip Container
   ------------------------------------------------------------ */
.content-tooltip-info {
  position: fixed;
  z-index: 101;

  /* Layout */
  max-width: 280px;
  max-height: 300px;
  padding: 20px;

  /* Typography */
  font-size: 12px;
  line-height: normal;
  color: var(--tooltip-text-color);
  text-align: left;

  /* Appearance */
  background: var(--tooltip-bg-color);
  border: 1px solid var(--tooltip-border-color);
  border-radius: 5px;
  box-shadow: var(--tooltip-shadow);
  opacity: 0;

  /* Behavior */
  pointer-events: none;
  cursor: default;
  word-break: break-word;
  word-wrap: break-word;
}

/* Visible State */
.content-tooltip-info.show-on-hover {
  opacity: 1;
  pointer-events: unset;
}

.content-tooltip-info.no-scroll {
  max-height: none;
}

/* ------------------------------------------------------------
   Tooltip Arrow
   ------------------------------------------------------------ */
.content-tooltip-info::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -24px;

  width: 24px;
  height: 54px;
  margin-top: -27px;

  background: url(/themes/custom/gff/components/redesign/elements/content-tooltip/img/tooltip-arrow.png) no-repeat center center;
}

/* Left aligned arrow (flipped) */
.content-tooltip-info.left-align-arrow::after {
  transform: rotate(180deg);
  right: 100%;
}

/* ------------------------------------------------------------
   Tooltip Links
   ------------------------------------------------------------ */
.content-tooltip-info a {
  font-size: 12px;
  font-weight: 400;
  color: var(--tooltip-primary-color);
  text-decoration: underline;
}

.content-tooltip-info a:hover {
  color: var(--tooltip-link-hover-color);
}

.content-tooltip-info .icon--download:after {
  flex-shrink: 0;
  --icon-width: 25px;
  --icon-height: 25px;
  background-size: var(--icon-width) var(--icon-height);
}

/* .tooltip-links-list {
  max-height: 400px;
}
 */

.tooltip-links-list li:not(:last-child) {
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--tooltip-border-color);
}

.tooltip-links-list a {
  text-decoration: none;
  line-height: 1.2;
}

@media only screen and (max-width:767px) {
  .content-tooltip-info {
    position: fixed;
    left: 0 !important;
    right: 0 !important;
    margin: 0 auto;
    top: 50% !important;
    transform: translateY(-50%);
  }

  .content-tooltip-info::after {
    display: none;
  }
}
