.storylist {
	display: flex;
	flex-direction: column;
	gap: var(--space-xl);
}

.storycard {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: var(--space-lg);
	background-color: var(--color-surface-low);
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-card);
	transition: background-color 300ms ease, box-shadow 300ms ease;
}

.storycard:hover {
	background-color: var(--color-surface);
	box-shadow: var(--shadow-card-hover);
}

.storycard__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-sm);
	padding-bottom: var(--space-sm);
	color: var(--color-text-muted);
}

.storycard__sep {
	margin-inline: var(--space-sm);
	color: var(--color-outline-variant);
}

.storycard__read {
	color: var(--color-outline);
}

.storycard__tag {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	padding: 0.125rem 0.625rem;
	background-color: var(--color-surface-lowest);
	border-radius: var(--radius-pill);
	color: var(--color-text-muted);
}

.storycard__tag::before {
	content: '';
	width: 0.375rem;
	height: 0.375rem;
	background-color: var(--color-primary-strong);
	border-radius: 50%;
}

.storycard__title {
	margin-top: var(--space-xs);
	margin-bottom: var(--space-sm);
	line-height: 1.3;
	transition: color var(--transition);
}

.storycard:hover .storycard__title {
	color: var(--color-primary);
}

/* The title link covers the whole card, so the card is one big click target. */
.storycard__link {
	color: inherit;
}

.storycard__link::after {
	content: '';
	position: absolute;
	inset: 0;
}

.storycard__excerpt {
	margin-bottom: var(--space-md);
	color: var(--color-text-muted);
	opacity: 0.9;
}

.storycard__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: auto;
	padding-top: var(--space-xs);
}

.storycard__more {
	color: var(--color-primary);
	font-weight: 500;
}

.storycard__arrow {
	display: inline-block;
	transition: transform var(--transition);
}

.storycard:hover .storycard__arrow {
	transform: translateX(0.25rem);
}

.storycard__number {
	color: var(--color-outline-variant);
}
