@import 'assets/scss/fonts.scss';
@import 'assets/scss/colors.scss';
@import 'assets/scss/z-index.scss';

.catalogCard {
  width: 340px;
  height: 248px;
  padding: 0px 12px 0px 20px;
  display: flex;
  flex-direction: column;
  background-color: var(--color-background-blue);
  border-radius: 10px;
  border: 1px solid var(--color-dark-elements-gray);
  outline: 2px solid transparent;
  @include font-s;
  transition: all 0.1s;
  z-index: -1;
  position: relative;
  pointer-events: all;

  &:hover {
    outline: 2px solid var(--color-airy-blue);
    border: 1px solid transparent;
    cursor: pointer;
  }
}

.installerLoaderWrapper {
  position: relative;
  z-index: 1;
  &:hover {
    z-index: 2;
  }
}

.cardLogoTitleContainer {
  display: flex;
  align-items: flex-start;
  height: 50%;
  border-bottom: 1px solid var(--color-light-gray);
  margin-top: 15px;

  .componentLogo {
    display: flex;
    align-items: center;
    flex-direction: column;

    button {
      margin-top: 14px;
    }

    svg {
      height: 55px;
      width: 55px;
      fill: var(--color-text-contrast);
    }
  }
}

.typeComponent {
  display: flex;
  flex: auto;
  margin-top: -6px;
  margin-right: -4px;
  margin-left: 4px;
  flex-direction: row-reverse;

  p {
    @include font-xs;
    font-size: 8px;
    font-weight: bold;
    border-radius: 4px;
    background-color: var(--color-type-component);
    padding: 2px 8px 2px 8px;
  }
}

.typeComponentApp {
  @extend .typeComponent;
  p {
    background-color: var(--color-type-component-app);
  }
}

.typeComponentConnector {
  @extend .typeComponent;
  p {
    background-color: var(--color-type-component-connector);
  }
}

.componentInfo {
  margin-left: 10px;
  h1 {
    @include font-s-bold;
    color: var(--color-text-contrast);
    font-weight: 600;
    letter-spacing: 0;
  }

  p {
    @include font-s;
    margin: 10px 0 0 0;
    color: var(--color-text-gray);
    overflow: visible;
    width: 138%;

    span {
      font-weight: bold;
    }
  }

  .category {
    display: inline;
    font-size: 12px;
    margin: 0px 2px 1px 0;
  }

  button {
    @include font-xs;
    color: var(--color-text-gray);
    background: none;
    text-decoration: none;
    border: 1px solid var(--color-light-gray);
    border-radius: 20px;
    &:hover {
      background: var(--color-text-gray);
      color: white;
      cursor: pointer;
    }
  }
}

.descriptionInfo {
  height: 46%;
  margin-top: 10px;

  p {
    width: 98%;
    height: 65px;
    color: var(--color-text-contrast);
  }

  button {
    border: 1px solid var(--color-airy-blue);
    @include font-xs;
    border-radius: 20px;
    background: transparent;
    color: var(--color-airy-blue);
    padding: 3px 4px 3px 4px;
    margin-right: 5px;
    margin-top: 8px;
  }
}

.description {
  height: 50px;
  overflow: hidden;
}

.availabilityContainer {
  height: 20px;
  p {
    width: 115px;
    height: 12px;
    font-size: 12px;
  }
  div {
    @include font-xs;
    display: flex;
    flex-direction: row;
    font-size: 11.5px;
    padding: 1px 2px 1px 0;
    margin-top: 2px;
    height: 16px;
    color: var(--color-airy-blue);
    min-width: fit-content;
    place-self: center;
  }
}

.availability {
  display: flex;
  align-items: center;
  color: var(--color-airy-blue);
  @include font-s;
  margin-top: 6px;
  height: 16px;
  svg {
    fill: var(--color-airy-blue);
    width: 14px;
    margin-right: 3px;
    display: flex;
    align-items: center;
  }
}

.bolded {
  font-weight: 800;
}

.checkmarkIcon {
  width: 15%;
  margin-bottom: 30px;
  fill: var(--color-soft-green);
}

.enableModalContainerWrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.enableModalContainer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  @include font-l;

  p {
    max-width: 70%;
    text-align: center;
    margin: 4px 0 20px 0;
    color: var(--color-text-contrast);
  }
}

.headerModal {
  @include font-xl;
}

.notifyMeButton {
  display: flex;
  white-space: nowrap;
}

.availableForSoonContainer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  button {
    color: var(--color-hover-blue);
    border: 1px solid var(--color-hover-blue);
    &:hover {
      background: var(--color-airy-blue);
      color: white;
      cursor: pointer;
    }
  }
}

.availableList {
  display: flex;
}

.soonTag {
  @include font-xs;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 8px;
  height: 22px;
  width: 50px;
  border-radius: 5px;
  background: var(--color-notify-me);
  color: var(--color-background-white);
}

.comingSoonTag {
  @include font-xs;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  height: 24px;
  width: 104px;
  color: white;
  background: var(--color-notify-me);
  margin-top: 14px;
  white-space: nowrap;
  &:hover {
    background: var(--color-notify-me);
  }
}
