.link {
	color: var(--fg, var(--color-accent-base));
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	border-radius: var(--component-radii-sm);
}

.size-small {
	font: var(--font-body-sm-default);
}

.size-medium {
	font: var(--font-body-md-default);
}

.size-large {
	font: var(--font-body-lg-default);
}

.weight-regular {
	font-weight: 400;
}

.weight-medium {
	font-weight: 500;
}

.link:hover {
	text-decoration: underline;
}

.link:active {
	text-decoration: underline;
}

.link:focus-visible {
	box-shadow: var(--shadows-focus);
	outline: none;
}

.link:focus-visible:hover {
	text-decoration: underline;
}

.link:global(.hover) {
	text-decoration: underline;
}

.link:global(.active) {
	text-decoration: underline;
}

.link:global(.focused) {
	box-shadow: var(--shadows-focus);
	text-decoration: none;
}

.link:global(.focused):global(.hover),
.link:global(.focused):hover {
	text-decoration: underline;
}

.link:global(.disabled),
.link[aria-disabled='true'] {
	opacity: var(--opacity-disabled);
}

.icon {
	block-size: 1em;
}
