@import 'src/styles/variables';

.wrap {
  display: flex;
  position: relative;
  width: 100%;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 0;
}

.content {
  flex: 0 1 $content_width;
  display: flex;
  align-items: flex-start;
  justify-content: stretch;
  border-radius: $radius $radius 0 0;
  box-sizing: border-box;
  padding: $gap;
  min-height: 64px;
  min-width: 0;

  @include tablet {
    border-radius: 0;
    height: auto;
    min-height: 40px;
  }
}

.title {
  text-transform: uppercase;
  font: $font_24_semibold;
  overflow: hidden;
  flex: 1;
  text-overflow: ellipsis;

  @include tablet {
    @include clamp(2);

    padding-bottom: 0;
    font: $font_16_semibold;
  }
}

.name {
  font: $font_12_regular;
  color: $gray_50;
  text-transform: lowercase;

  @include tablet {
    font: $font_12_regular;
  }
}

.panel {
  flex: 1;
  min-width: 0;
}

@keyframes pulse {
  0% {
    transform: scale(1);
  }

  45% {
    transform: scale(1);
  }

  60% {
    transform: scale(1.4);
  }

  75% {
    transform: scale(1);
  }

  90% {
    transform: scale(1.4);
  }

  100% {
    transform: scale(1);
  }
}

.like {
  transition: fill, stroke 0.25s;
  will-change: transform;
  position: relative;
  flex: 0 0 32px;
  fill: currentColor;

  &.is_liked {
    opacity: 1;

    svg {
      fill: $color_like;
    }

    .like_count {
      color: $color_like;
    }
  }

  &:hover {
    fill: $color_like;
    animation: pulse 0.75s infinite;

    .like_count {
      opacity: 0;
    }
  }
}

.like_count {
  position: absolute;
  font: $font_12_bold;
  left: 16px;
  bottom: 0;
  opacity: 1;
  transition: opacity 0.25s, color 0.25s;
  background: $content_bg_dark;
  padding: 0 3px;
  border-radius: 10px;
  z-index: 3;
  color: $gray_50;
  pointer-events: none;
  touch-action: none;
}

.buttons {
  margin-top: 12px;
  margin-right: $gap;

  @include tablet {
    margin-top: 6px;
  }
}

.button {
  @include hover_opacity;
  color: white;
  cursor: pointer;
}