@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;700&display=swap");

body {
	font-family: "Noto Sans TC", sans-serif;
	background-color: #0f172a;
	color: #e2e8f0;
}

.card {
	transition: all 0.5s ease;
	transform-style: preserve-3d;
	position: relative;
	cursor: pointer;
}

.card-front,
.card-back {
	backface-visibility: hidden;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 0.75rem;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.5);
}

.card-front {
	transform: rotateY(180deg);
	background-color: #1e293b;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 1rem;
}

.card-back {
	background: linear-gradient(135deg, #7c3aed, #4f46e5);
	display: flex;
	align-items: center;
	justify-content: center;
}

.flipped {
	transform: rotateY(180deg);
}

.card-image {
	width: auto;
	border-radius: 0.5rem;
	height: 10rem;
	object-fit: contain;
	margin-top: 1rem;
}

.glow {
	animation: glow 2s infinite alternate;
}

@keyframes glow {
	from {
		box-shadow: 0 0 5px rgba(255, 215, 0, 0.5);
	}
	to {
		box-shadow: 0 0 20px rgba(255, 215, 0, 0.8);
	}
}

.draw-btn {
	position: relative;
	overflow: hidden;
}

.draw-btn::after {
	content: "";
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: linear-gradient(
		to bottom right,
		rgba(255, 255, 255, 0.3),
		rgba(255, 255, 255, 0)
	);
	transform: rotate(30deg);
	transition: all 0.5s ease;
}

.draw-btn:hover::after {
	left: 100%;
}

.fade-in {
	animation: fadeIn 0.5s ease-in;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
