/* ── Diff Highlighting Engine ── */
.diff-added {
  background-color: var(--diff-add-bg);
  color: var(--diff-add-text);
  border-radius: 2px;
  padding: 1px 3px;
  border-bottom: 1px solid hsla(152, 76%, 48%, 0.4);
  cursor: help;
  position: relative;
}

.diff-removed {
  background-color: var(--diff-remove-bg);
  color: var(--diff-remove-text);
  text-decoration: line-through;
  border-radius: 2px;
  padding: 1px 3px;
  opacity: 0.7;
  cursor: help;
  position: relative;
}

.diff-changed {
  background-color: var(--diff-change-bg);
  color: var(--diff-change-text);
  border-radius: 2px;
  padding: 1px 3px;
  border-bottom: 1px dashed hsla(38, 92%, 55%, 0.5);
  cursor: help;
  position: relative;
}

/* Tooltip on hover */
.diff-added:hover::after,
.diff-removed:hover::after,
.diff-changed:hover::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: var(--bg-elevated);
  color: var(--text-primary);
  font-family: var(--font-ui);
  font-size: 11px;
  font-weight: 500;
  padding: 4px 8px;
  border-radius: var(--radius-sm);
  border: var(--border-subtle);
  white-space: nowrap;
  pointer-events: none;
  z-index: 50;
  box-shadow: var(--shadow-elevated);
}
