/* Language label container */
pre[data-lang] {
  position: relative;
  padding-top: 2.5em !important;
}

/* Language label itself */
pre[data-lang]::before {
  content: attr(data-lang);
  position: absolute;
  top: 0;
  left: 0;

  background: #253a4d;
  color: #e6edf3;
  opacity: 0.5;
  transition: opacity 0.3s ease-in-out;

  padding: 2px 8px;
  font-size: 0.75rem;
  line-height: 1.4;

  border-radius: 0 0 8px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  text-transform: lowercase;
  pointer-events: none; /* avoid text selection weirdness */
}

pre[data-lang]:hover::before,
pre[data-lang]:focus-within::before {
  opacity: 1;
}
