.tags-archive-page {
	color: #f5f5f5;
	font-family: 'Inter', sans-serif;
}

.tags-archive-page .container {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 24px;
}

.tags-archive-hero {
	padding: 40px 0 20px;
	border-bottom: 1px solid #2a2a2a;
}

.tags-archive-hero h1 {
	margin: 0;
	font-family: 'Space Grotesk', 'Inter', sans-serif;
	font-size: 2.8rem;
	font-weight: 700;
	letter-spacing: -0.02em;
}

.tags-archive-hero .accent-text { color: #a855f7; }

.tags-archive-hero p {
	max-width: 600px;
	margin: 0;
	color: #b0b0b0;
	font-size: 1.1rem;
}

.tags-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 24px;
	padding: 40px 0 60px;
}

.tag-card {
	position: relative;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #181818;
	border: 1px solid #2a2a2a;
	border-radius: 10px;
	color: #fff;
	cursor: pointer;
	text-decoration: none;
	transition: 0.25s cubic-bezier(0.2, 0, 0, 1);
}

.tag-card:hover,
.tag-card:focus-visible {
	border-color: #a855f7;
	box-shadow: 0 16px 40px rgba(168, 85, 247, 0.15);
	outline: none;
	transform: translateY(-6px);
}

.tag-card > img,
.tag-card__placeholder {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 0.25s cubic-bezier(0.2, 0, 0, 1);
}

.tag-card:hover > img,
.tag-card:focus-visible > img { transform: scale(1.05); }

.tag-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	background: radial-gradient(circle at 30% 25%, #35234b 0, #21172d 38%, #141217 100%);
	color: rgba(192, 132, 252, 0.55);
	font-size: 4rem;
}

.tag-card .tag-overlay {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 20px 16px 18px;
	background: linear-gradient(transparent, rgba(0, 0, 0, 0.85));
	text-align: center;
}

.tag-card .tag-overlay h3 {
	margin: 0;
	font-family: 'Space Grotesk', 'Inter', sans-serif;
	font-size: 1.2rem;
	font-weight: 700;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
}

.tag-card .count {
	color: #b0b0b0;
	font-size: 0.8rem;
	opacity: 0.9;
}

.tag-card .count i {
	margin-right: 4px;
	color: #a855f7;
}

@media (max-width: 768px) {
	.tags-archive-hero h1 { font-size: 2rem; }
	.tags-grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 16px; padding: 24px 0 40px; }
	.tag-card .tag-overlay { padding: 14px 12px 12px; }
	.tag-card .tag-overlay h3 { font-size: 1rem; }
}

@media (max-width: 480px) {
	.tags-archive-hero h1 { font-size: 1.6rem; }
	.tags-grid { grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 12px; }
	.tag-card .tag-overlay { padding: 10px 8px 8px; }
	.tag-card .tag-overlay h3 { font-size: 0.85rem; }
	.tag-card .count { font-size: 0.7rem; }
}
