.hljs-wrapper {
  padding: 0;
}

.hljs {
  padding: 0 0.5em;
  white-space: pre;
  word-wrap: normal !important;
  font-size: 1.75ex;
}

/* Syntax badge */

.hljs-wrapper {
  position: relative;
}

.hljs[data-language]::before {
  content: attr(data-language);
  position: absolute;
  inset-inline-end: 0;
  inset-block-start: 0;
  font-size: round(nearest, calc(1em / 1.2), 1px);
  padding-block-start: 0.1em;
  padding-block-end: 0.1em;
  padding-inline-start: 0.6em;
  padding-inline-end: 0.6em;
  color: #fff;
  background-color: #d54e21;
}

.hljs-copy-button {
  content: 'copy';
  position: absolute;
  inset-inline-end: 0;
  inset-block-end: 0;
  font-size: round(nearest, calc(1em / 1.2), 1px);
  line-height: 2;
  margin: 0;
  border: 0;
  padding-block-start: 0.1em;
  padding-block-end: 0.1em;
  padding-inline-start: 0.6em;
  padding-inline-end: 0.6em;
  color: white;
  background-color: blueviolet;
}
.hljs-copy-button:hover,
.hljs-copy-button:active,
.hljs-copy-button:focus {
  color: blueviolet;
  background-color: white;
}

/* No line numbers */

.hljs-no-gutter {
  padding: 0.5em;
}

/* Line numbers */

.hljs-line-number {
  display: block;
  float: inline-start;
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: -1em;
  margin-inline-end: 1em;
  border-inline-end: 1px solid;
  text-align: end;
  opacity: 0.6;
}

.hljs-line-number span {
  display: block;
  padding-block-start: 0;
  padding-block-end: 0;
  padding-inline-start: 1em;
  padding-inline-end: 0.5em;
}

.hljs-cl {
  display: block;
  clear: both;
}
