.diff { display: grid; row-gap: 0; border: 1px solid var(--sl-color-divider); background-color: var(--sl-color-bg-surface); border-radius: 0.25rem; [data-section="row"] { display: grid; grid-template-columns: 1fr 1fr; &:first-child [data-section="cell"] { padding-top: 0.375rem; } &:last-child [data-section="cell"] { padding-bottom: 0.375rem; } } [data-section="cell"] { position: relative; padding-left: 1.5ch; padding: 0.25rem 0.5rem 0.25rem 1.5ch; overflow-x: auto; margin: 0; pre { background-color: var(--sl-color-bg-surface) !important; } &:first-child { border-right: 1px solid var(--sl-color-divider); } } [data-diff-type="removed"] { background-color: var(--sl-color-red-low); & > pre { --shiki-dark-bg: var(--sl-color-red-low) !important; background-color: transparent !important; } &::before { content: "-"; position: absolute; left: 0.5ch; user-select: none; color: var(--sl-color-red-high); } } [data-diff-type="added"] { background-color: var(--sl-color-green-low); & > pre { --shiki-dark-bg: var(--sl-color-green-low) !important; background-color: transparent !important; } &::before { content: "+"; position: absolute; left: 0.6ch; user-select: none; color: var(--sl-color-green-high); } } }