.elemate-code-highlight {
	--ech-radius: 8px;
	--ech-line-height: 1.6;
	position: relative;
	width: 100%;
	display: block;
}

.elemate-code-highlight__viewport {
	width: 100%;
	display: block;
}

.elemate-code-highlight__source {
	display: none !important;
}

.elemate-code-highlight .line-highlight{
  border-bottom: 1px dashed hsl(0, 0%, 33%);
  border-top: 1px dashed hsl(0, 0%, 33%);
}

.elemate-code-highlight pre[class*="language-"] {
  padding-right: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
}

.elemate-code-highlight pre[class*="language-"]:not(.line-numbers) {
	padding-left: 15px;
}

.elemate-code-highlight pre[class*="language-"],
.elemate-code-highlight code[class*="language-"] {
	line-height: var(--ech-line-height);
	white-space: pre;
	word-spacing: normal;
	word-break: normal;
	word-wrap: normal;
	overflow-wrap: normal;
	tab-size: 4;
	hyphens: none;
}

.elemate-code-highlight pre[class*="language-"] {
	margin: 0;
	border-radius: var(--ech-radius);
	overflow: auto;
}

.elemate-code-highlight pre[class*="language-"] code[class*="language-"] {
	white-space: inherit;
}

.elemate-code-highlight .ech-wrap-lines,
.elemate-code-highlight .ech-wrap-lines code,
.elemate-code-highlight pre.ech-wrap-lines,
.elemate-code-highlight pre.ech-wrap-lines code {
	white-space: pre-wrap;
	word-break: break-word;
	overflow-wrap: anywhere;
}



/* Stronger wrap-lines override for scoped Prism themes */
.elemate-code-highlight[class*="ech-theme-"] pre.ech-wrap-lines[class*="language-"],
.elemate-code-highlight[class*="ech-theme-"] pre.ech-wrap-lines,
.elemate-code-highlight[class*="ech-theme-"] pre.ech-wrap-lines code[class*="language-"],
.elemate-code-highlight[class*="ech-theme-"] pre[class*="language-"].ech-wrap-lines,
.elemate-code-highlight[class*="ech-theme-"] pre[class*="language-"].ech-wrap-lines code {
	white-space: pre-wrap !important;
	word-break: break-word !important;
	word-wrap: break-word !important;
	overflow-wrap: anywhere !important;
}

/* Keep wrapped line-number blocks usable */
.elemate-code-highlight[class*="ech-theme-"] pre.line-numbers.ech-wrap-lines {
	overflow: auto;
}



/* ===== Diff Highlight full-line coloring ===== */


.elemate-code-highlight pre[class*="language-diff-"] .token.deleted,
.elemate-code-highlight pre[class*="language-diff-"] .token.inserted {
	width: 100%;
	box-sizing: border-box;
	/*padding-right: 0.75em;*/
}

/* Deleted lines */
.elemate-code-highlight pre[class*="language-diff-"] .token.deleted {
	background: rgba(255, 0, 0, .1) !important;
	color: #f92672 !important;
	width: 100%;
	display: block;
}

/* Inserted lines */
.elemate-code-highlight pre[class*="language-diff-"] .token.inserted {
	background: rgba(0, 255, 128, .1) !important;
	color: #a6e22e !important;
	width: 100%;
	display: block;
}

/* Make all inner syntax tokens inherit line color */
.elemate-code-highlight pre[class*="language-diff-"] .token.deleted *,
.elemate-code-highlight pre[class*="language-diff-"] .token.inserted * {
	color: inherit !important;
	background: transparent !important;
}

/* Prefix signs */
.elemate-code-highlight pre[class*="language-diff-"] .token.prefix.deleted {
	color: #f92672 !important;
	font-weight: 700;
	display: inline;
}

.elemate-code-highlight pre[class*="language-diff-"] .token.prefix.inserted {
	color: #a6e22e !important;
	font-weight: 700;
	display: inline;
}
