/* stylelint-disable scss/operator-no-unspaced */
/* stylelint-enable scss/operator-no-unspaced */
/* Breakpoint viewport sizes and media queries.

Breakpoints are defined as a map of (name: minimum width), order from small to large:
   (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)

 The map defined in the `$breakpoint` global variable is used as the `$breakpoints` argument by default.

 Name of the next breakpoint, or null for the last breakpoint.

  >> breakpoint-next(sm)
   md
  >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
   md
  >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))
   md
*/
/* Minimum breakpoint width. Null for the smallest (first) breakpoint.
    >> ecl-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
    576px
*/
/* Maximum breakpoint width. Null for the largest (last) breakpoint.
   The maximum value is calculated as the minimum of the next one less 0.1.

   >> ecl-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
   767px
*/
/* Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.
    Useful for making responsive utilities.

    >> infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
    ""  (Returns a blank string)
    >> infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
    "-sm"
*/
/**
 * Popover
 * @define popover
 */
.ecl-popover {
  display: inline-block;
  margin: 0;
  position: relative;
}

.ecl-popover__container {
  background-color: #fff;
  box-shadow: 0 7px 8px rgba(0, 47, 103, 0.08), 0 0 22px rgba(0, 47, 103, 0.04), 0 12px 17px rgba(0, 47, 103, 0.04), 0 -4px 4px rgba(0, 47, 103, 0.04);
  left: 50%;
  margin-top: calc(
    0.5rem + 0.75rem
  );
  position: absolute;
  transform: translateX(-50%);
  z-index: 15;
}
.ecl-popover__container::before {
  background-color: #fff;
  box-shadow: 0 7px 8px rgba(0, 47, 103, 0.08), 0 0 22px rgba(0, 47, 103, 0.04), 0 12px 17px rgba(0, 47, 103, 0.04), 0 -4px 4px rgba(0, 47, 103, 0.04);
  -webkit-clip-path: polygon(-8px -8px, calc(100% + 8px) -8px, calc(100% + 8px) calc(100% + 8px));
          clip-path: polygon(-8px -8px, calc(100% + 8px) -8px, calc(100% + 8px) calc(100% + 8px));
  content: "";
  height: 1rem;
  left: 50%;
  margin-left: calc(-1rem / 2);
  position: absolute;
  top: 0;
  transform: translate(0%, -50%) rotate(-45deg);
  width: 1rem;
}

.ecl-popover__content {
  font: normal normal 400 1rem/1.25rem arial, sans-serif;
  max-height: 11rem;
  min-width: 188px;
  padding: 0.75rem;
  width: auto;
  overflow-y: auto;
}

@media (min-width: 768px) {
  .ecl-popover__content {
    max-height: 16.5rem;
  }
}
.ecl-popover__list {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 188px;
}

.ecl-popover__link {
  align-items: center;
  display: flex;
  padding: 0.75rem;
}
.ecl-popover__link:focus-visible {
  outline-offset: -2px;
}

.ecl-popover--top .ecl-popover__container {
  bottom: 100%;
  margin-bottom: calc(
    0.5rem + 0.75rem
  );
  margin-top: 0;
}
.ecl-popover--top .ecl-popover__container::before {
  bottom: 0;
  top: auto;
  transform: translate(0%, 50%) rotate(135deg);
}

.ecl-popover--push-left .ecl-popover__container {
  left: 0;
  transform: none;
}
.ecl-popover--push-left .ecl-popover__container::before {
  left: var(--ecl-popover-position);
}

.ecl-popover--push-right .ecl-popover__container {
  left: auto;
  right: 0;
  transform: none;
}
.ecl-popover--push-right .ecl-popover__container::before {
  left: auto;
  right: var(--ecl-popover-position);
}