/**
 * Default link style
 *
 */

@mixin base-link(
    $color-resting: $t-a-link-color-resting,
    $color-visited: $t-a-link-color-visited,
    $color-hover: $t-a-link-color-hover,
    $focus-color: $t-a-palette-interaction-focus
) {
    color: $color-resting;
    text-decoration: underline;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: $t-a-link-thickness-resting;
    text-underline-offset: $t-a-link-offset-resting;

    &.visited,
    &:visited {
        color: $color-visited;
    }

    &.hover,
    &:hover {
        color: $color-hover;
        text-decoration-thickness: $t-a-link-thickness-hover;
        text-underline-offset: $t-a-link-offset-hover;
    }

    &.active,
    &:active {
        color: $color-resting;
    }

    &.focus,
    &:focus {
        outline: $t-l-spacing-absolute-100 solid $focus-color;
    }
}

@mixin u-link-inherit() {
	color: inherit;

	&.visited,
	&:visited {
		color: inherit;
	}

	&.hover,
	&:hover {
		color: inherit;
	}
}

@mixin u-link-underline() {
	text-decoration: underline;
}

@mixin u-link-faux-block() {
	&::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
	}
}

@mixin u-link-interface() {

	&.active,
	&:active,
	&.hover,
	&:hover {
		text-decoration: underline;
		text-decoration-skip-ink: auto;
	}
}

@mixin link-like {
	cursor: pointer;
	border: 0;
	background-color: transparent;
	font-weight: inherit;
	margin: 0;
	padding: 0;
	@include base-link;
}

@mixin u-link-wide-area() {
	position: relative;
	display: inline-block;

	&:after {
		content: "";
		position: absolute;
		top: -0.6rem;
		right: 0;
		bottom: -0.6rem;
		left: 0;
		min-height: 44px;
	}
}