<commit_before>/**
 * Make a caret! Not for rabbits.
 */
caret( color, direction = 'left', size = 3px )
	position: absolute
	width: 0
	height: 0
	border-top: size solid transparent
	border-right: size solid transparent
	border-bottom: size solid transparent
	border-left: size solid transparent

	// Reset in case we stacked this mixin.
	top: auto
	left: auto
	right: auto
	bottom: auto
	margin-top: 0
	margin-left: 0

	if direction == 'left' or direction == 'right'
		top: 50%
		margin-top: -(size)

	else if direction == 'up' or direction == 'down'
		left: 50%
		margin-left: -(size)

	if direction == 'left'
		left: -(size)
		border-right: size solid color
		border-left: none

	else if direction == 'up'
		top: -(size)
		border-bottom: size solid color
		border-top: none

	else if direction == 'right'
		right: -(size)
		border-left: size solid color
		border-right: none

	else if direction == 'down'
		bottom: -(size)
		border-top: size solid color
		border-bottom: none

overlay-img()
	content: ''
	display: block
	position: absolute
	top: 0 !important
	left: 0 !important
	width: 100%
	height: 100%

floating-img()
	border: 1px solid rgba( 255, 255, 255, 0.10 )
	box-shadow: 0 0 20px rgba( 0, 0, 0, 0.8 )<commit_msg>New mixin for doing fancy underlined links.<commit_after>/**
 * Make a caret! Not for rabbits.
 */
caret( color, direction = 'left', size = 3px )
	position: absolute
	width: 0
	height: 0
	border-top: size solid transparent
	border-right: size solid transparent
	border-bottom: size solid transparent
	border-left: size solid transparent

	// Reset in case we stacked this mixin.
	top: auto
	left: auto
	right: auto
	bottom: auto
	margin-top: 0
	margin-left: 0

	if direction == 'left' or direction == 'right'
		top: 50%
		margin-top: -(size)

	else if direction == 'up' or direction == 'down'
		left: 50%
		margin-left: -(size)

	if direction == 'left'
		left: -(size)
		border-right: size solid color
		border-left: none

	else if direction == 'up'
		top: -(size)
		border-bottom: size solid color
		border-top: none

	else if direction == 'right'
		right: -(size)
		border-left: size solid color
		border-right: none

	else if direction == 'down'
		bottom: -(size)
		border-top: size solid color
		border-bottom: none

overlay-img()
	content: ''
	display: block
	position: absolute
	top: 0 !important
	left: 0 !important
	width: 100%
	height: 100%

floating-img()
	border: 1px solid rgba( 255, 255, 255, 0.10 )
	box-shadow: 0 0 20px rgba( 0, 0, 0, 0.8 )

$selection-color = #b4d5fe

link-underlines( color, bg-color, bg-color-hover )

	// Local mixin
	_text-shadow-to-crop-underline( color )
		text-shadow: .03em 0 color, -.03em 0 color, 0 .03em color, 0 -.03em color, .06em 0 color, -.06em 0 color, .09em 0 color, -.09em 0 color, .12em 0 color, -.12em 0 color, .15em 0 color, -.15em 0 color

	_text-shadow-to-crop-underline( bg-color )
	color: color
	text-decoration: none
	background-image: linear-gradient(bg-color, bg-color), linear-gradient(bg-color, bg-color), linear-gradient(color, color)
	background-size: .05em 1px, .05em 1px, 1px 1px
	background-repeat: no-repeat, no-repeat, repeat-x
	background-position: 0% 90%, 100% 90%, 0% 90%

	&::selection
		_text-shadow-to-crop-underline( $selection-color )
		background: $selection-color

	&::-moz-selection
		_text-shadow-to-crop-underline( $selection-color )
		background: $selection-color

	&:before, &:after, *, *:before, *:after
		text-shadow: none

	&:visited
		color: color

	&:hover
		background-image: linear-gradient(bg-color, bg-color), linear-gradient(bg-color, bg-color), linear-gradient(bg-color-hover, bg-color-hover)
{'fraction_non_alphanumeric': 0.1342374757818987, 'fraction_numerical': 0.03736507057846665, 'mean_word_length': 3.557377049180328, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '632063', 'n_tokens_mistral': 1466, 'n_tokens_neox': 1248, 'n_words': 423}