.video-thumbnail {
  position: relative;
  display: block;
  overflow: hidden;
  isolation: isolate;
  background: #0a1628;
  color: #fff;
}

.video-thumbnail img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .3s ease, filter .3s ease;
}

.video-thumbnail::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 60%, rgba(0, 0, 0, .5));
}

.video-play {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  width: clamp(54px, 7vw, 76px);
  height: clamp(38px, 5vw, 54px);
  border-radius: 14px;
  background: #ff0033;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .32);
  transform: translate(-50%, -50%);
  transition: transform .2s ease, background .2s ease;
}

.video-play::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 52%;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 15px solid #fff;
  transform: translate(-50%, -50%);
}

.video-label {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 2;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(10, 22, 40, .88);
  box-shadow: 0 5px 16px rgba(0, 0, 0, .22);
  color: #fff;
  font: 700 11px/1.2 Inter, system-ui, sans-serif;
  letter-spacing: .03em;
}

.video-thumbnail:hover img {
  transform: scale(1.015);
}

.video-thumbnail:hover .video-play {
  transform: translate(-50%, -50%) scale(1.07);
}

.video-thumbnail:focus-visible {
  outline: 4px solid #1f6feb;
  outline-offset: 4px;
}

.video-thumbnail.is-pending {
  cursor: not-allowed;
}

.video-thumbnail.is-pending .video-play {
  background: rgba(10, 22, 40, .78);
}

.post-cover .video-thumbnail {
  aspect-ratio: 16 / 9;
  border-radius: var(--radius, 16px);
  box-shadow: var(--shadow-lg, 0 24px 60px rgba(10, 22, 40, .16));
}

.post-cover .video-thumbnail img {
  border-radius: 0;
  box-shadow: none;
}

.card .article-link:hover,
.card .read:hover,
.post-card .article-link:hover,
.post-card .read-more:hover {
  color: #1559c9;
  text-decoration: underline;
}

@media (max-width: 520px) {
  .video-label {
    right: 9px;
    bottom: 9px;
    padding: 6px 9px;
    font-size: 10px;
  }
}
