/*

  V STAR

*/

.card.masked[data-rarity='rare holo vstar'] .card__shine,
.card.masked[data-rarity='rare holo vstar'] .card__shine::before,
.card.masked[data-rarity='rare holo vstar'] .card__shine::after {
	-webkit-mask-image:
		var(--mask),
		radial-gradient(
			farthest-corner circle at var(--pointer-x) var(--pointer-y),
			hsla(0, 0%, 100%, 0) 0%,
			hsla(0, 0%, 100%, 0.5) 120%
		);

	mask-image:
		var(--mask),
		radial-gradient(
			farthest-corner circle at var(--pointer-x) var(--pointer-y),
			hsla(0, 0%, 100%, 0) 0%,
			hsla(0, 0%, 100%, 0.5) 120%
		);
}

/*

  SHINE LAYERS

*/

.card[data-rarity='rare holo vstar'] .card__shine,
.card[data-rarity='rare holo vstar'] .card__shine:after {
	--space: 5%;
	--angle: 133deg;
	--imgsize: cover;

	background-image:
		var(--foil),
		repeating-linear-gradient(
			0deg,
			var(--sunpillar-clr-1) calc(var(--space) * 1),
			var(--sunpillar-clr-2) calc(var(--space) * 2),
			var(--sunpillar-clr-3) calc(var(--space) * 3),
			var(--sunpillar-clr-4) calc(var(--space) * 4),
			var(--sunpillar-clr-5) calc(var(--space) * 5),
			var(--sunpillar-clr-6) calc(var(--space) * 6),
			var(--sunpillar-clr-1) calc(var(--space) * 7)
		),
		repeating-linear-gradient(
			var(--angle),
			#0e152e 0%,
			hsl(180, 10%, 60%) 3.8%,
			hsl(180, 29%, 66%) 4.5%,
			hsl(180, 10%, 60%) 5.2%,
			#0e152e 10%,
			#0e152e 12%
		),
		radial-gradient(
			farthest-corner circle at var(--pointer-x) var(--pointer-y),
			hsla(0, 0%, 0%, 0.1) 12%,
			hsla(0, 0%, 0%, 0.15) 20%,
			hsla(0, 0%, 0%, 0.25) 120%
		);

	background-blend-mode: soft-light, hue, hard-light;
	background-size:
		var(--imgsize),
		200% 700%,
		300% 100%,
		200% 100%;
	background-position:
		center center,
		0% var(--background-y),
		var(--background-x) var(--background-y),
		var(--background-x) var(--background-y);

	filter: brightness(calc((var(--pointer-from-center) * 0.75) + 0.25)) contrast(2) saturate(1.25);
}

.card[data-rarity='rare holo vstar'] .card__shine:after {
	content: '';

	background-size:
		var(--imgsize),
		200% 400%,
		195% 100%,
		200% 100%;
	background-position:
		center center,
		0% var(--background-y),
		calc(var(--background-x) * -1) calc(var(--background-y) * -1),
		var(--background-x) var(--background-y);

	filter: brightness(calc((var(--pointer-from-center) * 0.75) + 0.5)) contrast(1.5) saturate(1.5);
	mix-blend-mode: exclusion;
}

.card[data-rarity='rare holo vstar'] .card__shine::before {
	content: '';
	background-image: radial-gradient(
		farthest-corner circle at var(--pointer-x) var(--pointer-y),
		hsla(190, 7%, 80%, 0.75) 0%,
		hsla(260, 7%, 50%, 0.25) 45%,
		hsl(310, 7%, 50%) 120%
	);
	mix-blend-mode: hard-light;
	z-index: 2;
	opacity: 0.8;
}

/*

  GLARE LAYERS

*/

.card[data-rarity='rare holo vstar'] .card__glare {
	filter: brightness(0.7) contrast(2);

	background-image: radial-gradient(
		farthest-corner circle at var(--pointer-x) var(--pointer-y),
		hsl(195, 90%, 90%) 5%,
		hsl(300, 3%, 60%) 60%,
		hsl(350, 0%, 15%) 150%
	);

	mix-blend-mode: hard-light;
	opacity: calc(var(--card-opacity) * (var(--pointer-from-center) * 0.75));
}

/*

  NO MASK

*/

.card:not(.masked)[data-rarity='rare holo vstar'] .card__shine,
.card:not(.masked)[data-rarity='rare holo vstar'] .card__shine:after {
	--mask: none;
	--foil: url("ancient.png");
	--imgsize: 18% 15%;

	background-blend-mode: exclusion, hue, hard-light;
	filter: brightness(calc((var(--pointer-from-center) * 0.25) + 0.35)) contrast(1.8) saturate(1.75);
}

.card:not(.masked)[data-rarity='rare holo vstar'] .card__shine:after {
	filter: brightness(calc((var(--pointer-from-center) * 0.75) + 0.5)) contrast(1.5) saturate(1.5);
}

.card:not(.masked)[data-rarity='rare holo vstar'] .card__glare {
	filter: brightness(0.55) contrast(2);
}
